资源描述:
《《C语言循环结构》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、while语句一般形式:while(循环条件表达式)循环体;执行流程:条件循环体假(0)真(非0)while4.5循环结构特点:先判断表达式,再执行循环体说明:循环体有可能一次也不执行原因:初始条件不成立循环体可为任意类型语句无限循环:while(1)循环体;例用while循环求#include“stdio.h”main(){inti,sum=0;i=1;while(i<=100){sum=sum+i;i++;}printf("%d",sum);}循环初值循环终值循环变量增值循环条件循环体例显示1~10的平方#include“stdio.h”main(){inti=1;while(i<=10)
2、{printf("%d*%d=%d",i,i,i*i);i++;}}运行结果:1*1=12*2=43*3=94*4=165*5=256*6=367*7=498*8=649*9=8110*10=100do~while语句一般形式:do循环体;while(循环条件表达式);执行流程:do循环体条件假(0)真(非0)特点:先执行循环体,后判断表达式说明:至少执行一次循环体do~while可转化成while结构条件循环体假(0)真(非0)循环体While循环例用do~while循环求#include“stdio.h”main(){inti,sum=0;i=1;do{sum+=i;i++;}whil
3、e(i<=100);printf("%d",sum);}(思考:分别输入5和15,两个程序的结果是否相同?)#include“stdio.h”main(){inti,sum=0;scanf("%d",&i);do{sum+=i;i++;}while(i<=10);printf("%d",sum);}#include“stdio.h”main(){inti,sum=0;scanf("%d",&i);while(i<=10){sum+=i;i++;}printf("%d",sum);}例:while和do~while比较for语句一般形式:for(expr1;expr2;expr3)循环体语句;执
4、行流程:expr2循环体假(0)真(非0)forexpr1expr3for语句一般应用形式:for(循环变量赋初值;循环条件;循环变量的修改){循环体;}说明:for语句中expr1,expr2,expr3类型任意,都可省略,但分号;不可省for语句可以转换成while结构expr1;while(expr2){循环体语句;expr3;}例用for循环求#include“stdio.h”main(){inti,sum=0;for(i=1;i<=100;i++)sum+=i;printf("%d",sum);}例1:main(){inti,sum=0;for(i=1;i<=100;i++)sum+
5、=i;printf(“%d”,sum);}例2:main(){inti=1,sum=0;for(;i<=100;i++)sum+=i;printf(“%d”,sum);}例3:main(){inti=1,sum=0;for(;i<=100;sum+=i,i++);printf(“%d”,sum);}main(){inti,j,k;for(i=0,j=100;i<=j;i++,j--){k=i+j;printf("%d+%d=%d",i,j,k);}}0+100=1001+99=100……..50+50=100流程转向语句break语句功能:在循环语句和switch语句中,终止并跳出所在的结
6、构说明:break只能终止并跳出最近一层的结构break不能用于循环语句和switch语句之外的任何其它语句之中expr……break;……假(0)真(非0)whiledo……break;…...expr假(0)真(非0)whileexpr2……break;…...假(0)真(非0)forexpr1expr3switchexpr语句组1break;语句组2break;语句组nbreak;语句组break;…...const1const2constndefaultcase例:main(){inti=1,sum=0:for(;;){sum+=i;i++;if(i>100)break;}printf
7、(“sum=%d”,sum);}本程序中,当i>100时,强行终止for循环,继续执行for语句下一条语句。break举例:当半径从1到10时,分别输出圆面积,面积大于100时停止#definePI3.14159main(){intr;floatarea;for(r=1;r<=10;r++){area=PI*r*r;if(area>100)break;printf("r=%d,area=%.2f