资源描述:
《第5章 循环结构.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第五章循环结构的C程序设计5.1while循环语句5.2do-while循环语句5.3for循环语句5.4多重循环5.5break语句和continue语句5.6goto语句和标号5.7程序举例5.1while循环语句while循环的一般形式如下:while(表达式)语句图5.1while循环while语句的执行过程是:先计算while后面圆括号内表达式的值,如果其值为“真”(非0),则执行语句部分(即循环体);然后再计算表达式的值,并重复上述过程,直到表达式的值为“假”(0)时,循环结束,程序控制转至循环结
2、构的下一语句。while循环中的表达式一般是关系表达式(如i<=100)或逻辑表达式(如a0)个数,求其和。图5.2求n个数的和main(){inti,n,k,sum;i=1;sum=0;printf("Inputn:");scanf("%d",&n);while(i<=n){scanf("%d",&k);sum=sum+k;i++;}printf("sumis:%d
3、n",sum);}运行结果:Inputn:6123421195sumis:73例5.2从键盘连续输入字符,直到输入“回车”符为止,统计输入的字符个数。图5.3统计输入字符的个数#includemain(){charch;intlen=0;puts("Typeinasentence,thenpress");while((ch=getch())!=′r′){putchar(ch);len++;}printf("Sentenceis%dcharactersl
4、ong.",len);}运行结果:Typeinasentence,thenpressthisisasentence.Sentenceis19characterslong.5.2do-while循环语句do-while循环的一般形式如下:do语句while(表达式);图5.4do-while循环do—while语句的执行过程是:先执行循环体中的语句,然后计算表达式的值。若表达式的值为“真”(非0),则再次执行循环体。如此重复,直至表达式的值为“假”(0)时,结束循环。例5.3利用do—whi
5、le语句重做例5.1。图5.5求n个数的和main(){inti,n,k,sum;i=1;sum=0;printf("Inputn:");scanf("%d",&n);do{scanf("%d",&k);sum=sum+k;i++;}while(i<=n);printf("sumis:%d",sum);}运行结果:Inputn:61237112334sumis:905.3for循环语句for循环语句的一般形式如下:for(表达式1;表达式2;表达式3)语句图5.6for循环其执行
6、过程是:(1)首先求解表达式1。(2)求解表达式2,若其值为“真”(非0),则执行循环体中的语句,然后执行第(3)步。若为“假”(0),则结束循环,转至第(5)步。(3)求解表达式3。(4)转至第(2)步重复执行。(5)执行for循环语句的下一语句。for语句的功能可用while语句描述如下:表达式1;while(表达式2){语句;表达式3;}for语句最简单的应用形式,也是最容易理解的形式:for(循环变量赋初值;循环条件;循环变量增值)语句例如,for(i=1;i<=50;i++)sum=sum+i
7、;例5.4利用for语句重做例5.1。main(){inti,n,k,sum=0;printf("Inputn:");scanf("%d",&n);for(i=1;i<=n;i++){scanf("%d",&k);sum=sum+k;}printf("sumis:%d",sum);}运行结果:Inputn:6711205219sumis:64例5.5计算1至50中是7的倍数的数值之和。main(){inti,sum=0;for(i=1;i<=50;i++)if(i%7==0)sum+=
8、i;printf("sum=%d",sum);}运行结果:sum=1965.4多重循环当一个循环体内又包含另一个完整的循环结构时,称为多重循环或循环嵌套,其循环结构可用上述三种循环语句的任意一种。例如,下面是两种循环嵌套的示意图。(1)while(){while(){