C语言 第五章-循环结构程序设计.ppt

C语言 第五章-循环结构程序设计.ppt

ID:48735467

大小:537.00 KB

页数:52页

时间:2020-01-20

C语言 第五章-循环结构程序设计.ppt_第1页
C语言 第五章-循环结构程序设计.ppt_第2页
C语言 第五章-循环结构程序设计.ppt_第3页
C语言 第五章-循环结构程序设计.ppt_第4页
C语言 第五章-循环结构程序设计.ppt_第5页
资源描述:

《C语言 第五章-循环结构程序设计.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第五章循环结构程序设计第5章循环语句程序设计5.2、while语句(p115)5.3、do-while语句(p115)5.4、for语句(p118)5.5、break和contiune语句5.6、典型举例说明5.2while语句1.while的语句格式:while(条件)语句2.当条件为真(非0)时重复执行内嵌语句(循环体);当条件为假(0)时,跳过内嵌语句,执行整个while的后续语句。循环准备条件P循环语句假真程序用while语句实现求1+2+…+n。main(){inti,sum,n;scanf(“%d”,&n);/*键盘输入n*/i=1;

2、sum=0;/*初始化i=1,sum=0*/while(i<=n){sum=sum+i;i++;}printf(“%d”,sum);}5.3do-while语句1.do–while的语句格式:do语句while(条件);2.功能:while循环准备条件P循环语句假真例比较下面两个程序的区别,分别写出它们的执行结果。main()/*程序1*/{inti,sum=0;i=1;while(i<=100){sum=sum+i;i++;}printf("%d",sum);}main()/*程序2*/{inti,sum=0;i=1;do{sum=sum+i;

3、i++;}while(i<=100);printf("%d",sum);}结果相同同样是下列程序,但如果while后面的表达式结果一开始就是假时,两种循环结果会不一样。main()/*程序1*/{inti,sum=0;i=101;while(i<=100){sum=sum+i;i++;}printf("%d",sum);}main()/*程序2*/{inti,sum=0;i=101;do{sum=sum+i;i++;}while(i<=100);printf("%d",sum);}输出结果为:sum=0输出结果为:sum=101结果不相同(表达式

4、的值第一次为真时,两值相同,否则不同)5.4for语句1.for的语句格式:for(表达式1;表达式2;表达式3)语句2.for语句的执行过程。(1)先求解表达式1(表达式1通常是为循环变量赋初值)。(2)再求解表达式2(循环的控制条件)。若为非0,则执行第(3)步;若为0,则结束循环,转到第(5)步。(3)执行内嵌语句(循环体)后,求解表达式3(通常对表达式2中的循环控制变量进行修正,以便在若干次循环之后能够使表达式2的值为0,结束循环)。(4)转回上面第(2)步,继续执行。(5)执行for语句的下面一个语句(后续语句)。表达式2表达式1语句表

5、达式3后续语句假真for语句的执行过程流程图表示例,下面程序段计算1+2+…+100并输出,它的执行过程如图所示。for(sum=0,i=1;i<=100;i++)sum=sum+i;printf(“%d”,sum);表达式1表达式2表达式3循环体语句后续语句i<=100sum=0,i=1sum=sum+ii++printf(“%d”,sum)假真程序的结构和流程图另外,也可以参考书上的用while语句等价表示。3.说明:(1)for语句的3个表达式都可为逗号表达式。尤其是表达式1常用逗号表达式给多个变量赋初值。例如:for(sum=0,i=1;

6、i<=100;i++)sum=sum+i;上面for语句中表达式1:sum=0,i=1为逗号表达式,负责为sum和i赋初值。注意:上述程序也可以写成:sum=0;for(i=1;i<=100;i++)sum=sum+i;(2)表达式2一般是关系表达式(如i<=100)或逻辑表达式(如:a>0&&b>0),但也可以是数值表达式或字符表达式,只要其值为非0,就执行循环体。例如:for(num=1,i=1;num%2;i++)scanf(“%d”,&num);其中:表达式2为算术表达式num%2。当num为奇数时循环执行scanf(“%d”,&num)

7、。(3)for语句一般形式中的“语句”部分就是循环体,它可以是一个单语句,也可以是一个复合语句。如果不加{},系统只将for后面的一个单语句作为循环体。例如:for(i=1;i<=10;i++){a=a+1;b=b+1;}例如:a=0;b=0;for(i=1;i<=10;i++){a=a+1;b=b+1;}执行后a的值为10,b的值为10。而程序段a=0;b=0;for(i=1;i<=10;i++)a=a+1;b=b+1;执行后a的值为10,b的值为1。(4)for语句一般形式中的表达式1,2,3都可以省略,但其后的分号不能省略。但注意若表达式2

8、省略,代表条件永远为真(死循环)。例如:sum=0;i=1;for(;i<=100;i++)sum=sum+i;例如:for(sum=0

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。