资源描述:
《C语言第五章循环结构程序设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、循环结构是结构化程序设计三种基本结构之一,它和顺序结构、选择结构共同作为各种复杂程序的基本构造单元。几乎所有实用的程序都包含循环。熟练掌握选择结构和循环结构的概念及使用,是程序设计的最基本的要求。C语言中循环包括:while语句do-while语句for语句goto语句和if语句配合循环结构程序设计《C语言程序设计》5.1循环概述引例:输入30名同学的成绩,计算全体同学的平均分。思路1:intx1,x2,x3,…,x30;intsum;scanf(“%d,%d…%d”,&x1,&x2,…&x30);sum=x1+x2+…+x30;pri
2、ntf(“%f”,sum/30.0);循环结构程序设计《C语言程序设计》思路2:输入第1个同学的成绩,送x;x送s中;输入第2个同学的成绩,送x;x+s送s中;……输入第30个同学的成绩,送x;x+s送s中;输出s/30.0,即平均分。scanf(“%d”,&x);s+=x;0.0送s;x+s送s中;循环结构程序设计《C语言程序设计》思路3:s=0重复30次:读数据,送xs+x送s输出s1→ii≤30ABi++NY读数据,送xs+x送s循环结构程序设计《C语言程序设计》语法格式为:while(表达式)语句执行过程:5.2while语句—
3、“当型”循环表达式语句NY循环结构程序设计《C语言程序设计》[引例]输入30名同学的成绩,计算全体同学的平均分。main(){inti,s,x;s=0;i=1;while(i<=30){scanf(“%d”,&x);s+=x;i++;}printf(“%f”,s/30.0);}0→s,1→ii≤30读xs+=x输出s/30.0i++NY循环结构程序设计复合语句《C语言程序设计》[例5.1]求1+2+3+4+5的和。分析:对引例的算法进行修改main(){inti,s;i=1;s=0;while(i<=5){s+=i;i++;}pri
4、ntf(“Sum=%d”,s);}循环结构程序设计0→s,1→ii≤30读xs+=x输出s/30.0i++NYs5s+=i《C语言程序设计》运行过程分析:变量跟踪表[例5.1]求1+2+3+4+5的和。main(){inti,s;i=1;s=0;while(i<=5){s+=i;i++;}printf(“Sum=%d”,s);}循环结构程序设计is10213364105156《C语言程序设计》循环的控制:循环变量[例5.1]求1+2+3+4+5的和。main(){inti,s;i=1;s=0;while(i<=5){s+=i;i
5、++;}printf(“Sum=%d”,s);}循环结构程序设计循环变量给循环变量赋初值使循环变量发生变化《C语言程序设计》[例5.2]求5!,即求1×2×3×4×5的积。main(){inti,p;i=1;p=1;while(i<=5){p*=i;i++;}printf(“5!=%d”,p);}循环结构程序设计ip112132642451206《C语言程序设计》[例5.3]求1!+2!+3!+4!+5!之和。main(){inti,p,s;i=1;p=1;s=0;while(i<=5){p*=i;s+=p;i++;}print
6、f(“Sum=%d”,s);}循环结构程序设计ips112132642451206013933153《C语言程序设计》main(){inti=1,s=0;while(i_____){________}printf(“Sum=%d”,s);}[例5.4]求100以内的奇数之和,即求:1+3+5+……+99的和。循环结构程序设计<100s+=i;i+=2;<100if(i%2!=0)s+=i;i++;<=50s+=2*i-1;i++;《C语言程序设计》语法格式为:do语句while(表达式);执行过程:5.3do-while语句—“
7、直到型”循环循环结构程序设计表达式语句NY《C语言程序设计》[例5.5]求1+2+3+4+5的和。main(){inti,s;i=1;s=0;do{s+=i;i++;}while(i<=5);printf(“Sum=%d”,s);}运行过程分析:变量跟踪表循环结构程序设计is10213364105156《C语言程序设计》[例5.6]while与do-while的比较:求1+2+3+4+5的和。用while语句用do-while语句main(){inti,s=0;i=6;while(i<=5){s+=i;i++;}printf(“Su
8、m=%d”,s);}循环结构程序设计main(){inti,s=0;i=6;do{s+=i;i++;}while(i<=5);printf(“Sum=%d”,s);}运行结果:Sum=0运行结果:S