谭浩强C语言课件第6章_循环控制.ppt

谭浩强C语言课件第6章_循环控制.ppt

ID:57035542

大小:297.50 KB

页数:32页

时间:2020-07-27

谭浩强C语言课件第6章_循环控制.ppt_第1页
谭浩强C语言课件第6章_循环控制.ppt_第2页
谭浩强C语言课件第6章_循环控制.ppt_第3页
谭浩强C语言课件第6章_循环控制.ppt_第4页
谭浩强C语言课件第6章_循环控制.ppt_第5页
资源描述:

《谭浩强C语言课件第6章_循环控制.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第六章循环控制C循环控制If-goto循环while循环do-while循环for循环§6.1概述§6.2goto语句及其构成的循环一、goto语句1、语句格式goto语句标号写在语句前的标识符(后加:)2、语句功能使控制转到语句标号所标识的语句gotoL1;L2:语句………...L1:语句gotoL2;例:二、用法1、与if语句联合使用构成循环2、用来实现从多重循环体内转出L1:if(e){循环体gotoL1;}(当型循环)L2:循环体if(e)gotoL2;(直到型循环)例6.1求s=1+2

2、+3+….+n的值。main(){inti=1,s=0,n;scanf(“%d”,&n);L1:s=s+i;i++;if(i<=n)gotoL1;printf(“s=%d”,s);}main(){inti=1,s=0,n;scanf(“%d”,&n);L1:if(i<=n){s=s+i;i++;gotoL1;}printf(“s=%d”,s);}§6.3while语句—“当型”循环一、语句格式While(e)循环体单语句或复合语句二、执行过程(先判断后执行)当表达式e值为非0时,执行循环体,然后

3、重复执行while语句;当e的值为0时,结束循环,执行后继语句。非00循环体e例6.2求s=1+2+3+….+n的值(用while循环)。main(){inti=1,s=0,n;scanf(“%d”,&n);while(i<=n){s=s+i;i++;}printf(“s=%d”,s);}main(){inti=1,s=0,n;scanf(“%d”,&n);while(i<=n)s+=i++;printf(“s=%d”,s);}Theend§6.4do-while语句—“直到型”循环一、语句格式

4、do循环体while(e);单语句或复合语句二、执行过程(先执行后判断)先执行do后的循环体,然后判断表达式e的值,若为非0,重复执行循环体,直到while中的表达式e为0,结束循环。循环体e0非0例6.3求s=1+2+….+n的值(用do-while循环)。main(){inti=1,s=0,n;scanf(“%d”,&n);do{s=s+i;i++;}while(i<=n);printf(“s=%d”,s);}main(){inti=1,s=0,n;scanf(“%d”,&n);dos+=i

5、++;while(i<=n);printf(“s=%d”,s);}q对于同一个问题既可以用while语句处理,也可以用do-while语句处理。do-while语句结构可以转换成while结构。do-while语句流程图可以改写为:表达式成立吗?循环体真(非0)假(0)循环体语句可见,do-while结构是由一个语句加一个while结构构成的。一般情况下,用while语句和do-while语句处理同一问题时,若二者的循环体一样,则结果也一样。但是如果while后面的表达式一开始就为假(0)时,两

6、种循环的结果是不同的。结论:当while后面的表达式的第一次的值为“真”时,两种循环的结果相同。否则,二者结果不相同(指二者具有相同的循环体的情况)。§6.5for语句及其构成的循环一、语句格式for(表达式1;表达式2;表达式3)循环体计算表达式1计算表达式3表达式2循环体下一条语句0非0二、执行过程1、计算表达式1。2、判断表达式2。若非0,执行循环体,转3;否则,结束循环,转4。3、计算表达式3。转2。4、执行for语句的下一条语句。三、说明1、for语句最简单、最常用的应用形式for(循

7、环变量赋初值;循环条件;循环变量增值)循环体例6.4求s=1+2+….+n的值(用for循环)。main(){inti,s=0,n;scanf(“%d”,&n);for(i=1;i<=n;i++)s=s+i;printf(“s=%d”,s);}2、for语句中的三个表达式均可省略注意:(1)分号不能省略。(2)应保证循环正确执行。例main(){inti,s=0,n;scanf(“%d”,&n);for(i=1;i<=n;)s+=i++;printf(“s=%d”,s);}main(){inti

8、=1,s=0,n;scanf(“%d”,&n);for(;i<=n;)s+=i++;printf(“s=%d”,s);}说明:①、for语句的三个表达式都可以缺省,但两个分号不能缺省;②、若在for语句之前已经对循环控制变量赋初值,则表达式1可以缺省;例:i=1;for(;i<=n;i++)s=s+i;for(i=1;i<=n;i++)s=s+i;③、通常不缺省表达式2;有时缺省表达式2,即不判断循环条件,循环将无终止的执行,即认为表达式2始终为真;在循环体内用if和break控制循环结束。if

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

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

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