资源描述:
《C语言循环结构资料.ppt》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、第六章循环控制主要内容6.1概述6.2goto语句以及用goto语句构成循环6.3用while语句实现循环6.4用do-while语句实现循环6.5用for语句实现循环6.6循环的嵌套6.7几种循环的比较6.8break语句continue和语句6.9程序举例6.1概述什么是循环?为什么要使用循环?问题1:问题2:求学生平均成绩循环生活中的例子:击鼓传花:大家坐成一个圈,鼓声响起的时候将花束顺序交到下一个人的手里,依次向下传递,当鼓声突然中断时停止传花,花束落在谁的手里便成为输家4×100米接力赛跑:第1个人跑完100米后将接力棒传给第2个人,第2个人再跑100米,然后是第3个人,直到第
2、4个人跑完最后一个100米共同点:都要完成相同的任务:量变的重复内容都有结束条件:发生质变的界限6.2goto语句以及用goto语句构成循环goto语句——无条件转向语句goto语句标号;语句标号用标识符表示,例如:gotolabel_1;合法;goto123;不合法.【例6.1】用goto语句和if语句构成循环,计算sum=1+2+3+……+100。main(){inti,sum=0;i=1;loop:if(i<=100){sum=sum+i;i++;gotoloop;}printf("%d",sum);}6.2goto语句以及用goto语句构成循环滥用goto语句将使程序流程无规
3、律、可读性差.不建议使用goto语句。一般来说,可以有两种用途:(1)与if语句一起构成循环结构;(2)从循环体中跳转到循环体外。6.3用while语句实现循环while语句用来实现“当型”循环结构。一般形式:while(表达式)语句执行过程:计算表达式值,若该值为非0时,则执行while语句中的内嵌语句。然后重复上述步骤,直到表达式值为假(为0),则执行while语句的下一条语句。其特点是:先判断表达式,后执行语句。循环体语句6.3用while语句实现循环注意:循环体如果包含一个以上的语句,应该用花括弧括起来,以复合语句形式出现。在循环体中应有使循环趋向于结束的语句。1.计算sum=1
4、+2+3+……+100第5章循环程序设计1.计算sum=1+2+3+……+100循环体循环控制条件循环控制变量循环的初始化#includevoidmain(){inti=1,sum=0;while(i<=100){sum=sum+i;i++;}printf(“Sum=%d”,sum);}第5章循环程序设计2.计算sum=2+4+6+……+100循环体循环控制条件循环控制变量循环的初始化#includevoidmain(){inti=2,sum=0;while(i<=100){sum=sum+i;i+=2;}printf(“Sum=%d”,sum
5、);}2.计算sum=2+4+6+……+100循环体循环控制条件循环控制变量循环的初始化#includevoidmain(){inti=2,sum=0;while(i<=100){sum=sum+i;i+=2;}printf(“Sum=%d”,sum);}6.4do-while语句do-while语句的特点:先执行循环体,然后判断循环条件是否成立。一般形式:do循环体语句while(表达式);执行过程:先执行一次指定的循环体语句,然后判别表达式,当表达式的值为非零(“真”)时,返回重新执行循环体语句,如此反复,直到表达式的值等于0为止,此时循环结束。6.4用do-w
6、hile语句实现循环while语句和用do-while语句的比较:二者是完全等价的。do-while语句有可能一次也不执行循环体。循环的变化:sum=1+2+3+……+100#includevoidmain(){inti=1,sum=0;while(i<=100){sum=sum+i;i++;}printf(“Sum=%d”,sum);}#includevoidmain(){inti=1,sum=0;do{sum=sum+i;i++;}while(i<=100);printf(“Sum=%d”,sum);}顺序打印1-10的阶乘,即1!,2!,
7、…,10!本题的关键是求阶乘数学上,n!=1·2·3·…·(n-1)·n外循环内循环对比程序:(更优)#includevoidmain(){inti=1;floatf=1;while(i<=10){f=f*i;printf("%2d!=%.0f",i,f);i++;}}思考一下:8-10的阶乘#includevoidmain(){inti=1,j;floatf;while(i<=10){j=1