- 1、本文档共43页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
六章循环结构程序设计
第六章 循环结构程序设计 6.1 while语句 6.2 do-while语句 6.3 for语句 6.4 多重循环 6.5 continue和break语句 6.6 练习 6.7 程序设计举例 6.8 作业和实验 6.1 while语句 1. 形式:while(表达式) 循环体 2. 执行过程:先判断,后执行。 例1 用while语句求1+2+3+…+99+100的值。 3. 说明 (1)while语句是先判断, 后执行。 如果循环条件一开始就不成立(条件表达式为假), 则循环一次都不执行。 (2)while循环中的表达式一般是关系表达式或逻辑表达式,但也可以是数值表达式或字符表达式,只要其值非零,就可执行循环体。 (3)循环体为多条语句时, 必须采用复合语句,要加上一对花括号。 (4)循环体中必须有改变循环条件的语句, 否则循环不能终止, 形成死循环。 #includestdio.h main( ) {int m=0; char ch; ch=getchar( ); while(ch!=‘\n’) {m++; ch=getchar( ); } printf(“%d”, m); } 6.2 do-while语句 1. 形式:do 循环体 while(表达式) ; 2. 执行过程:先执行,后判断。 例3 用do-while语句求1+2+3+…+99+100的值。 3. 说明 (1)do-while语句是先执行, 后判断。如果循环的条件一开始就不成立, 循环也将执行一次。 (2)do-while循环中的表达式一般也是关系表达式或逻辑表达式,但也可以是数值表达式或字符表达式,只要其值非零,就可执行循环体。 (3)循环体为多条语句时必须采用复合语句。 (4)与while语句一样, 循环体中同样必须有改变循环条件的语句, 否则循环不能终止,将形成死循环。 (5)对于同一个问题,while循环与do-while循环的条件表达式是完全相同的。 6.3 for语句 1. 形式: for( 表达式1 ; 表达式2 ; 表达式3) 循环体 2. 执行过程:先判断,后执行。 例 for(a=1; a=3; a++) printf(“%d”, a); 执行步骤: ①执行a=1,a值为1。 ②判断a=3,成立,输出1。 ③执行a++,a值为2。 ④判断a=3,成立,输出2。 ⑤执行a++,a值为3。 ⑥判断a=3,成立,输出3。 ⑦执行a++,a值为4。 ⑧判断a=3,不成立,循环结束。 3. 说明 (1)for语句是先判断,后执行。如果循环条件一开始就不成立,则循环一次都不执行。 (2)for语句的使用很灵活,形式多样化。 (3)循环体为多条语句时, 必须采用复合语句,要加上一对花括号。 (4)循环变量的增值并不受限于1,可以为正,也可为负。但必须使循环变量的值发生改变,使循环条件能趋向假,否则会造成死循环。 4. for语句的灵活使用 (1)for语句中的初始化表达式和增值表达式也常为逗号表达式。 如:for(sum=0, i=1; i=100; i++) sum=sum+i; 又如:for(a=0, b=8; ab; a++, b--) x=a+b; (2)for语句中的初始化表达式和增值表达式可以省略,但两个分号不能省略。此时,for语句与while语句完全等价。 例5可改写成如下形式: main( ) {int i, sum=0; i=1; for( ; i=100 ; ) {sum=sum+i; i++; } printf(“%d”, sum); } (3)循环条件不一定是循环变量和某个目标值的比较。 例4可改用for语句来实现: #includestdio.h main( ) {int m ; char ch; for(m=0; ( ch=getchar( ) ) !=‘\n’ ; m++ ) ; printf(“%d”, m); } 比较:几种循环可互相替换,其中for语句的功能最强,使用最灵活。 goto语句(无条件转向语句) 1. 形式:goto 标号; 2. 功能:将程序流程无条件地转移到标
文档评论(0)