C语言程序设计06章循环结构程序设计.ppt
《C语言程序设计06章循环结构程序设计.ppt》由会员分享,可在线阅读,更多相关《C语言程序设计06章循环结构程序设计.ppt(32页珍藏版)》请在三一办公上搜索。
1、1,第六章 循环结构程序设计,6.1 概述循环结构主要有:(1)用goto语句和if语句构成循环;(2)用while语句;(3)用do-while语句;(4)用for语句。,2,6.2 goto语句以及用goto语句构成循环 goto语句为无条件转向语句,它的一般形式为:goto 语句标号;(1)语句标号用标识符表示。标识符的命名规则和变量名相同,即由字母、数字和下划线组成,其第一个字符必须为字母或下划线,不能用整数来作标号;(2)goto语句通常有两种用途:1.与if语句一起构成循环结构;2.从循环体中跳转到循环体外;(3)goto语句的使用不符合结构化程序的原则,一般尽量不用,除非万不得已
2、。,3,例6.1 用if语句和goto语句构成循环,求main()int i,sum=0;i=1;loop:if(i=100)sum=sum+i;i+;goto loop;printf(“%d”,sum);,4,6.3 while语句,一般形式:while(表达式)内嵌语句特点:先判断表达式,当它为真(非0)时,再执行内嵌语句;若为假(0),则不执行内嵌语句。这样的循环结构我们称为“当型”循环结构。流程图:,表达式,内嵌语句,非0,0,5,例6.2 求main()int i,sum=0;i=1;while(i=100)sum=sum+i;i+;printf(“%d”,sum);,说明:1)如果
3、循环体不只包含一条语句,则应用花括号括起来形成一个复合语句。2)在循环体中应有使循环趋于结束的语句,避免出现死循环。在本例中,设置循环条件为i=100,然后有 i+使循环趋于结束,这样就不会出现死循环。,6,main()int n=0;while(n+=1)printf(“%d n”,n);printf(“%d n”,n);运行结果:,说明:(补充内容)3)用作循环条件的表达式可以是各种类型的表达式或数值类型。如:while(1)、while(2)、while(a)等。4)小心循环变量的“边界值”,注意循环次数。对条件表达式的计算次数要比循环体的执行次数多一次。如右例:,7,main()int
4、 i,sum=0;i=1;while(i=100);sum=sum+i;i+;printf(“%d”,sum);则程序将出现“死”循环,无法得到正确结果。,此分号使 while 的循环体为空,说明:5)不要在 while(表达式)后加分号。如例6.2若误写成:,8,6.4 do-while语句,一般形式:do 循环体语句 while(表达式);,循环体语句,表达式,非0,0,流程图:,9,例 6.3 用do-while语句求main()int i,sum=0;i=1;do sum=sum+i;i+;while(i=100);/*别忘了,这里有分号*/printf(“%d”,sum);,10,讨
5、论:while语句与do-while语句之间的异同点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+;,11,2)在一般情况下,用while语句和用do-while语句处理同一问题时,若二者的循环体部分一样,则它们的结果也一样。但是,对于while后面的表达式一开始就为0值时,两种
6、循环结构的执行结果是不同的。对于while语句,循环体可能一次也不执行;而do-while语句,循环体至少要执行一次。对于while语句,循环体的执行次数要比循环条件的判断次数少一次;而do-while语句,循环体的执行次数和循环条件的判断次数是相同的。,12,6.5 for语句,一般形式:for(表达式1;表达式2;表达式3)语句,for(表达式1;表达式2;表达式3)语句,执行过程:,13,求解表达式1,求解表达式2,真,语句,求解表达式3,假,for语句的下一语句,流程图:,14,例:for(i=1;i=100;i+)sum=sum+i;,i=1,i=100,真,sum=sum+i,i+
7、,假,15,说明:(1)表达式1可以省略,此时应在for语句之前给循环变量赋初值(设定循环初始条件)。比如:for(i=1;i=100)break;,16,(3)表达式3可以省略,但此时应另外设法修改循环变量,保证循环能正常结束。比如:for(i=1;i100)break;,17,(5)表达式1、2、3都可以为任何表达式。比如:表达式1和表达式3可以是逗号表达式,即包含一个以上的简单表达式,中间用逗号间隔。例1:for(i=1,sum=0;i=100;i+)sum=sum+i;,例2:for(i=0;(c=getchar()!=n;i+);/*分号不能少*/请问:此语句的作用是什么?,此语句的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 06 循环 结构 程序设计

链接地址:https://www.31ppt.com/p-6504019.html