欢迎来到天天文库
浏览记录
ID:59012585
大小:509.50 KB
页数:43页
时间:2020-09-26
《第六章 循环控制ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第六章循环控制2021/8/71主要内容6.1概述6.2goto语句以及用goto语句构成循环6.3用while语句实现循环6.4用do-while语句实现循环6.5用for语句实现循环6.6循环的嵌套6.7几种循环的比较6.8break语句continue和语句6.9程序举例2021/8/726.1概述在许多问题中需要用到循环控制。循环结构是结构化程序设计的基本结构之一,它和顺序结构、选择结构共同作为各种复杂程序的基本构造单元。什么是循环?为什么要使用循环?问题1:问题2:求学生平均成绩分数相加后除以课数2021/8/736.2goto语句
2、及用goto语句构成循环goto语句:[作用]:无条件转向语句[格式]:goto语句标号;[说明]:语句标号用标识符表示,它的定名规则与变量名相同[例如]:gotolabel_1;//合法;goto123;//不合法.2021/8/74[注意]:结构化程序设计方法主张限制使用goto语句,因为滥用goto语句将使程序流程无规律、可读性差。[用途]:一般来说,可以有两种用途:(1)与if语句一起构成循环结构;(2)从循环体中跳转到循环体外。但是这种用法不符合结构化原则,一般不宜采用,只有在不得已时(例如能大大提高效率)才使用。intsum=0,
3、i=0;loop:if(i==100)gotoend;sum+=++i;gotoloop;end:cout<4、意]:(1)循环体如果包含一个以上的语句,应该用花括弧括起来,以复合语句形式出现。(2)在循环体中应有使循环趋向于结束的语句。如果无此语句,则i的值始终不改变,循环永不结束。2021/8/786.4用do-while语句实现循环[语法]:do循环体语句while(表达式);[功能]:先执行一次指定的循环体语句,然后判别表达式,当值为非零时,返回重新执行循环体,如此反复,直到表达式的值等于0为止,此时循环结束。[特点]:先执行循环体,然后判断循环条件是否成立。2021/8/79例6.3用do-while语句求。main(){inti,sum=05、;i=1;do{sum=sum+i;i++;}while(i<=100);printf("%d",sum);}2021/8/710while语句和用do-while语句的比较:在一般情况下,用while语句和用do-while语句处理同一问题时,若二者的循环体部分是一样的,它们的结果也一样。但是如果while后面的表达式一开始就为假(0值)时,两种循环的结果是不同的。2021/8/711例6.4while和do-while循环比较。voidmain(){intsum=0,i;scanf(“%d”,&i);while(i<=10){sum=6、sum+i;i++;}printf(“sum=%d”,sum);}voidmain(){intsum=0,i;scanf(“%d”,&i);do{sum=sum+i;i++;}while(i<=10);printf(“sum=%d”,sum);}1↙Sum=5511↙Sum=01↙Sum=5511↙Sum=102021/8/7126.5用for语句实现循环C语言中的for语句使用最为灵活,不仅可以用于循环次数已经确定的情况,而且可以用于循环次数不确定而只给出循环结束条件的情况,它完全可以代替while语句。[语法]:for(表达式1;表达式27、;表达式3)语句2021/8/713[过程]:(1)先求解表达式1。(2)求解表达式2,若值为非0(真),则执行for语句中指定的内嵌语句,然后执行第(3)步。若值为0(假),则结束循环,转到第(5)步。(3)求解表达式3。(4)转回上面第(2)步骤继续执行。(5)循环结束,执行下一个语句2021/8/714[说明]:(1)for循环中的“表达式1”、“表达式2”和“表达式3”都是选择项,即可以缺省,但“;”不能缺省。通常“表达式1”用来对循环控制变量赋初值;“表达式2”用来表示循环控制条件;“表达式3”用来改变循环控制变量的值(2)省略了“8、表达式1”,表示不对循环控制变量赋初值2021/8/715(3)省略了“表达式2”,不做其它处理时便成死循环例如:for(i=1;;i++)sum=sum+i;相当
4、意]:(1)循环体如果包含一个以上的语句,应该用花括弧括起来,以复合语句形式出现。(2)在循环体中应有使循环趋向于结束的语句。如果无此语句,则i的值始终不改变,循环永不结束。2021/8/786.4用do-while语句实现循环[语法]:do循环体语句while(表达式);[功能]:先执行一次指定的循环体语句,然后判别表达式,当值为非零时,返回重新执行循环体,如此反复,直到表达式的值等于0为止,此时循环结束。[特点]:先执行循环体,然后判断循环条件是否成立。2021/8/79例6.3用do-while语句求。main(){inti,sum=0
5、;i=1;do{sum=sum+i;i++;}while(i<=100);printf("%d",sum);}2021/8/710while语句和用do-while语句的比较:在一般情况下,用while语句和用do-while语句处理同一问题时,若二者的循环体部分是一样的,它们的结果也一样。但是如果while后面的表达式一开始就为假(0值)时,两种循环的结果是不同的。2021/8/711例6.4while和do-while循环比较。voidmain(){intsum=0,i;scanf(“%d”,&i);while(i<=10){sum=
6、sum+i;i++;}printf(“sum=%d”,sum);}voidmain(){intsum=0,i;scanf(“%d”,&i);do{sum=sum+i;i++;}while(i<=10);printf(“sum=%d”,sum);}1↙Sum=5511↙Sum=01↙Sum=5511↙Sum=102021/8/7126.5用for语句实现循环C语言中的for语句使用最为灵活,不仅可以用于循环次数已经确定的情况,而且可以用于循环次数不确定而只给出循环结束条件的情况,它完全可以代替while语句。[语法]:for(表达式1;表达式2
7、;表达式3)语句2021/8/713[过程]:(1)先求解表达式1。(2)求解表达式2,若值为非0(真),则执行for语句中指定的内嵌语句,然后执行第(3)步。若值为0(假),则结束循环,转到第(5)步。(3)求解表达式3。(4)转回上面第(2)步骤继续执行。(5)循环结束,执行下一个语句2021/8/714[说明]:(1)for循环中的“表达式1”、“表达式2”和“表达式3”都是选择项,即可以缺省,但“;”不能缺省。通常“表达式1”用来对循环控制变量赋初值;“表达式2”用来表示循环控制条件;“表达式3”用来改变循环控制变量的值(2)省略了“
8、表达式1”,表示不对循环控制变量赋初值2021/8/715(3)省略了“表达式2”,不做其它处理时便成死循环例如:for(i=1;;i++)sum=sum+i;相当
此文档下载收益归作者所有