C语言【清华大学出版社】西安交通大学第06章.ppt

C语言【清华大学出版社】西安交通大学第06章.ppt

  1. 1、本文档共46页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言【清华大学出版社】西安交通大学第06章

第六章 循环控制; 6.1概述 引入循环控制语句的作用 当满足一定条件时,重复执行一段程序.基本结构之一. 设置循环需要考虑的问题 循环初值, 循环条件的设置,循环条件的修改 C语言中可以用以下语句来实现循环: ⑴ 用goto语句和 if 语句构成循环; ⑵用while语句; ⑶用do_while语句; ⑷用for语句。 ;6.2 goto语句和goto语句构成的循环;用途: 1. 与if语句一起构成循环结构。 2. 从循环体中跳到循环体外(一般指最深层)。;说明:;⑵ goto语句是一种非结构化语句,结构化程序设计方法不提倡使用goto语句,因为滥用goto语句将使程序流程无规律,可读性差。但也不是绝对禁止使用,只有在能够大大提高程序效率时才使用。;二、用goto语句和 if 语句构成循环;6.3 while 语句 “当型”循环结构;例:将上面计算10!并输出结果的程序用 while语句写出:;循环结构的术语;注意: ⑴循环条件中的表达式一般是逻辑表达式和关系表达式,也可以是算数表达式(非0为真,0为假)。循环体如包括有一个以上的语句,则必须用{}括起来,组成复合语句。一般表达式中应含有循环控制变量。 while (3)和while (0)虽然从程序设计的角度上说是不合理的,但是合法的。;6.4 do-while 语句“直到型”循环结构;例:将上面计算10!并输出结果的程序用 do-while语句写出:;我们将while和do-while循环做一下比较:; 比较上面两个程序,虽然结构是相同的,在输入值为有效值时结果相同,但当输入无效值时输出结果是不同的。为什么? ;例题:输入一批整数,输入0时表示输入结束,求这些正数的和。;6.5 for语 句 ;执行过程:;例:将上面计算10!的程序用 for语句写出:;说明:;(b)表达式2:决定循环的条件,若省略,则为无限循环。这时应在循环体内设法结束循环。 ;(d) 可以省略表达式1和表达式3,只有表达式2。如 for(;i=10;) while(i=10) {sum=sum*i; 相当于 {sum=sum*i; i++;} i++;} ;⑶ for 语句最为灵活,它完全可以代替的while语句。;(4)表达式一般是关系表达式 或??辑表达式,但也可以是数值表达式或字符表达式,只要其值为非零,就执行循环体。 例如: for(i=0;(c=getchar())!=‘\n’;i+=c); 此语句的循环体为空语句,本来要在循环体内处理的内容放在表达式3中。不断输入字符将他们的ASCII码相加,直到输入一个回车为止。 又例如: for(;(c=getchar())!=‘\n’;) printf(“%c”,c); ;6.6 三种循环语句的总结 ;⑸三种循环可以处理同一问题,一般情况可以互相代替。但在实际应用中,我们要根据具体情况来选用不同的循环语句。选用的一般原则如下: ;当循环体至少执行一次时,用do-while语句;反之,如果循环体可能一次也不执行时,用while语句。 ;6.7 循环的嵌套 ;什么叫循环嵌套?; 三种循环(while 、do_while、for)都可以嵌套。下面几种都是合法的嵌套形式:;do { do { ··· } while( ); }while( ); do_while循环体 嵌套do_while循环;例:将上例(打印8行7列的星号矩形)用二重循环实现。 ;6.8 break 和continue语句 ;例:打印半径为1~10的圆的面积,如果面积超过100,则不再打印。;注意:在嵌套循环中使用break语句,它只影响包含它的最内层循环,即程序仅跳出包围该break的那层循环。 ;一般形式:;例:计算用户输入的所有正整数的和, 用户输入 0 时结束。 ;continue语句与break语句的区别是: continue只结束本次循环,而不是终止整个循环的执行。而break则是结束整个循环过程,不再判断执行循环的条件是否成立。 具体看书P115流程图与例子。;6.9 程序举例 ;第几个月 小兔子对数 中兔子对数 老兔子对数 总数 1

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档