第6章c语言教程独家_第1页
第6章c语言教程独家_第2页
第6章c语言教程独家_第3页
第6章c语言教程独家_第4页
第6章c语言教程独家_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第六章循环控制,第六章循环控制6.1概述6.2goto语句以及用goto语句构成的循环6.3while语句6.4do_while语句6.5for语句6.6循环的嵌套6.7几种循环的比较6.8break语句和continue语句6.9程序举例,6.1概述,二、循环的应用,要求输入全校学生的学习成绩;求若干个数之和;迭代求解方程的根,一、复杂程序的基本构造单元,顺序结构选择结构循环结构,三、实现循环的基本方法,用goto语句和if语句用while语句用do-while语句用for语句,6.2goto语句及用goto语句构成循环,goto语句标号;,一、goto语句的一般形式,下划线,二、goto语句的主要用途,与if语句一起构成循环结构,从循环体中跳转到循环体外。,此功能可以用break和continue语句取代。只有需要从多层循环的内层跳到外层循环时才用到goto语句。由于goto语句使程序流程无规律,不符合结构化程序设计原则,要限制作用。,三、用if语句、goto语句构成循环实例,例6.1if、goto语句求和教材P106,main()inti,sum=0;i=1;loop:if(i=100)sum=sum+i;i+;gotoloop;printf(“%d”,sum);,6.3while语句(当型循环结构),while(表达式)语句,一、一般形式,当表达式为非0值时,执行while语句中的内嵌语句。,先判断表达式,后执行语句,二、while语句求和实例例6.2教材P107,求,main()inti,sum=0;i=1;while(i=100)sum=sum+i;i=i+1;printf(“%d”,sum);,main()inti,sum=0;i=1;while(i=100)sum=sum+i;i=i+1;printf(“%d”,sum);,三、while语句中应注意的问题,循环体包含一个以上的语句时,应该用大括号括起来,6.4do-while语句(直到型循环),do语句while(表达式);,一、一般形式,先执行指定的内嵌语句,然后判断表达式,当表达式的值为非0时,返回重新执行该语句,直到表达式的值为0时,循环结束。,先执行语句,然后再判断表达式,二、do-while语句求和例6.3教材P108,main()inti,sum=0;i=1;dosum=sum+i;i=i+1;while(i=100);printf(“%d”,sum);,三、while和do-while循环比较(例6.4),main()inti,sum=0;scanf(“%d”,main()inti,sum=0;scanf(“%d”,6.5for语句,for(表达式1;表达式2;表达式3)语句,一、一般形式,1.先求解表达式1;2.求解表达式2;值为非0,则执行内嵌语句,转第3步;值为0,则结束循环,转到第5步3.若表达式为真,求解表达式3;4.转回上面第2步继续执行;5.执行for语句的后续语句。,二、for语句最简单的应用形式,for(循环变量初值;循环条件;循环变量增值)语句,for(i=1;i=100;i+)sum=sum+i,例如,for(;i=100;i+)sum=sum+i,三、for语句有关说明,for语句中的表达式1可以省略,表达式2省略,循环无终止地进行,for(i=1;i+)sum=sum+i,表达式3省略,循环变量须在循环体内有变化,for(sum=0,i=1;i=100;)sum=sum+i;i+;,循环变量在循环体内变化,for(;i=100;)sum=sum+i;i+;,续for语句有关说明(一),可以省略表达式1和表达式3,三个表达式都省略,循环无终止地进行,for(;),表达式1和表达式3可以是与循环变量无关的其他赋值表达式,也可以是一个以上的表达式,for(sum=0,i=1;i=100;i+,j-)sum=sum+i;for(i=1;i=100;i+,i+)sum=sum+i;,在逗号表达式内按自左至右顺序求解,整个逗号表达式的值为其中最右边的表达式的值。for(i=1;i=100;i=i+2)sum=sum+i;,循环体为空语句,本程序把要在循环体执行的内容放在表达式3中,从终端接收一个字符赋给c,然后判断是否是n(换行符),如果不是换行符,就执行循环体,for(i=0;(c=getchar()!=n;i+=c);,续for语句有关说明(二),表达式2一般是关系表达式或逻辑表达式,但也可是数值表达式或字符表达式,只要其值为非0,就执行循环体,for(;(c=getchar()!=n;)printf(“%c”,c);,无表达式1和表达式3的目的是每读入一个字符便输出一个字符,运行过程:ComputerComputer,6.6循环的嵌套,一、概念:,嵌套:一个循环体内包含另一个完整的循环结构,多层循环:内嵌的循环体内又嵌套循环结构,前述的三种循环都可以互相嵌套while循环do-while循环for循环,二、几种嵌套形式,二、几种嵌套形式(续),6.7几种循环的比较,四种循环可以用来处理同一问题,但一般情况不提倡用goto型循环。while和do-while循环,只在while后面指定循环条件,在循环体内包含循环趋于结束语句。while和do-while循环,循环变量应在循环语句前初始化。While循环和for循环是先判断表达式后执行语句,而do-while循环是先执行语句,然后判断表达式。对while、do-while和for循环,可用break语句跳出循环,而用continue语句结束本次循环;而对goto型循环,不能用break、continue语句进行控制,6.8break语句和continue语句,break;,一、break语句,1.break语句可以使流程跳出switch结构2.break语句可以用来从循环体内跳出循环体,即提前结束循环接着执行循环下面的语句。,for(r=1;r100)break;printf(“%f”,area);,当面积值大于100时,跳出循环体,不再执行其余几次循环,二、continue语句,continue;,一般形式:,其作用是结束本次循环,即跳过循环体下面未执行的语句,接着进行下一次是否执行循环的判定。,for(n=100;n=1e-6)pi=pi+t;n=n+2;s=-s;t=s/n;pi=pi*4

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论