资源描述:
《C语言全国计算机二级等级考试教程第五章循环结构章节带习题.ppt》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、第5章循环结构5.1while语句和用while语句构成的循环结构5.2do-while语句和用do-while语句构成的循环结构5.3for语句和用for语句构成的循环结构5.4循环结构的嵌套5.5break和continue语句在循环体中的作用5.6程序举例5.1while语句和用while语句构成的循环结构5.5.1while循环的一般形式while(表达式)循环体关键字当型循环图表达式循环体满足不满足例如:k=0;while(k<10){printf(“*”);k++;}********
2、**5.1while语句和用while语句构成的循环结构5.5.1while循环的一般形式利用while循环编写程序,求1+2+3+…+100的值。分析:1+2+3+4+5ss=0s=s+1s=s+2s=s+3s=s+4s=s+5ss=1+2+3+4+5ns=s+n0保存到1391318初值#includemain(){ints=0,n;n=1;while(n<=5){s=s+n;n++;}printf(“%d”,s);}18while(n<=100)问:循环体共执行了几次
3、?5.2do-while语句和用do-while语句构成的循环结构5.2.1do-while语句构成的循环结构do-while循环结构的一般形式:do循环体while(表达式);关键字直到循环不要忘了分号图循环体表达式不满足满足例如:s=0;i=0;do{i++;s+=i;}while(i<10);5.2do-while语句和用do-while语句构成的循环结构5.2.1do-while循环的执行过程例5.4计算Fibonacci数列,直到某项大于1000为止,并输出该项的值。程序分析:f1
4、f2f01①f=f1+f21②f1=f2③f2=f112直到f2大于1000为止#includemain(){intf1,f2,f;f1=0;f2=1;do{f=f1+f2;f1=f2;f2=f;}while(f2<=1000);printf("F=%d",f);}F=1597上机练习:请用while循环编写此程序。5.3for语句和用for语句构成的循环结构5.3.1for语句构成的循环结构for循环的一般形式如下:for(表达式1;表达式2;表达式3)循环体关键字for
5、循环的执行过程:首先计算表达式1。然后计算机表达式2,进行条件判断。若条件为真,则执行循环体;否则,退出循环。当条件为真时,循环体执行一次后,转回执行表达式3。然后执行表达式2,继续进行条件判断…………例如:for(k=0;k<10;k++)printf(“*”);**********说明1.for语句中的表达式可以部分或全部省略,但两个“;”不可省略。例如:for(;i<=10;i++)for(sum=0,i=1;i<=100;sum=sum+i,i++);2.for后一对圆括号中的表达式可以
6、是任意有效的C语言表达式。例如:for(;;)printf(“*”);5.3for语句和用for语句构成的循环结构5.3.1for语句构成的循环结构例5.5用for语句编写程序,求1+2+3+…+100。#includemain(){ints=0,n;n=1;while(n<=100){s=s+n;n++;}printf(“%d”,s);}while结构#includemain(){ints,n;s=0;for(n=1;n<=100;n++)s+=n;pr
7、intf("s=%d",s);}for结构s=5050思考与上机练习1.编写程序,求1*2*3*…*1002.自由练习例5.65.5break和continue语句在循环体中的作用break语句在循环结构中起跳出循环体,即终止本层循环。图表达式语句1break语句2满足不满足例5.9计算s=1+2+3+…+i,直到累加到s大于5000为止,并给出s和i的值。#includemain(){inti,s;s=0;for(i=1;s<=5000;i++){s=s+i;}print
8、f("s=%d,i=%d",s,i-1);}#includemain(){inti,s;s=0;for(i=1;;i++){s=s+i;if(s>5000)break;}printf("s=%d,i=%d",s,i);}s=5050,i=1005.5break和continue语句在循环体中的作用continue语句为结束本次循环,即跳过循环体中下面尚未执行的语句,接着转向循环条件进行判断。图表达式语句1continue语句2满足不满足例5.10在循环体中continu