C语言程序设计06章循环结构程序设计.ppt

C语言程序设计06章循环结构程序设计.ppt

ID:52266767

大小:231.00 KB

页数:32页

时间:2020-04-03

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

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

1、第六章循环结构程序设计6.1概述循环结构主要有:(1)用goto语句和if语句构成循环;(2)用while语句;(3)用do-while语句;(4)用for语句。16.2goto语句以及用goto语句构成循环goto语句为无条件转向语句,它的一般形式为:goto语句标号;(1)语句标号用标识符表示。标识符的命名规则和变量名相同,即由字母、数字和下划线组成,其第一个字符必须为字母或下划线,不能用整数来作标号;(2)goto语句通常有两种用途:1.与if语句一起构成循环结构;2.从循环体中跳转到循环体外;(3)goto语句的使用不符合结构化程序的原则,一般尽量不用,除非万不得已。2例6.1用if

2、语句和goto语句构成循环,求main(){inti,sum=0;i=1;loop:if(i<=100){sum=sum+i;i++;gotoloop;}printf(“%d”,sum);}36.3while语句一般形式:while(表达式)内嵌语句特点:先判断表达式,当它为真(非0)时,再执行内嵌语句;若为假(0),则不执行内嵌语句。这样的循环结构我们称为“当型”循环结构。流程图:表达式内嵌语句非004例6.2求main(){inti,sum=0;i=1;while(i<=100){sum=sum+i;i++;}printf(“%d”,sum);}说明:1)如果循环体不只包含一条语句,则应

3、用花括号括起来形成一个复合语句。2)在循环体中应有使循环趋于结束的语句,避免出现死循环。在本例中,设置循环条件为i<=100,然后有i++使循环趋于结束,这样就不会出现死循环。5main(){intn=0;while(n++<=1)printf(“%d”,n);printf(“%d”,n);}运行结果:说明:(补充内容)3)用作循环条件的表达式可以是各种类型的表达式或数值类型。如:while(1)、while(–2)、while(‘a’)等。4)小心循环变量的“边界值”,注意循环次数。对条件表达式的计算次数要比循环体的执行次数多一次。如右例:6main(){inti,sum=0;i=

4、1;while(i<=100);{sum=sum+i;i++;}printf(“%d”,sum);}则程序将出现“死”循环,无法得到正确结果。此分号使while的循环体为空说明:5)不要在while(表达式)后加分号。如例6.2若误写成:76.4do-while语句一般形式:do循环体语句while(表达式);循环体语句表达式非00流程图:8例6.3用do-while语句求main(){inti,sum=0;i=1;do{sum=sum+i;i++;}while(i<=100);/*别忘了,这里有分号*/printf(“%d”,sum);}9讨论:while语句与do-while语句之间的异

5、同点1)对同一问题可以用while语句处理,也可以用do-while语句处理。do-while结构和while结构可以相互转换。我们可以认为do-while结构是由一个复合语句(while结构的循环体)加一个while结构构成。比如:do{sum=sum+i;i++;}while(i<=100);sum=sum+i;i++;while(i<=100){sum=sum+i;i++;}等价于102)在一般情况下,用while语句和用do-while语句处理同一问题时,若二者的循环体部分一样,则它们的结果也一样。但是,对于while后面的表达式一开始就为0值时,两种循环结构的执行结果是不同的。对于

6、while语句,循环体可能一次也不执行;而do-while语句,循环体至少要执行一次。对于while语句,循环体的执行次数要比循环条件的判断次数少一次;而do-while语句,循环体的执行次数和循环条件的判断次数是相同的。116.5for语句一般形式:for(表达式1;表达式2;表达式3)语句for(表达式1;表达式2;表达式3)语句执行过程:12求解表达式1求解表达式2真语句求解表达式3假for语句的下一语句流程图:13例:for(i=1;i<=100;i++)sum=sum+i;i=1i<=100真sum=sum+ii++假14说明:(1)表达式1可以省略,此时应在for语句之前给循环变

7、量赋初值(设定循环初始条件)。比如:for(i=1;i<=100;i++)sum=sum+i;可写为:i=1;for(;i<=100;i++)sum=sum+i;(2)表达式2也可以省略。即没有循环终止条件,循环无条件进行。这时,需要在循环体中加入用于跳出循环的控制语句,否则就会出现死循环。比如:for(i=1;;i++)/*分号不能省略*/{sum+=i;if(i>=100)break;}15(3)表达式3

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

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

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