资源描述:
《大学C语言基础自学课件 第6章.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第六章循环控制内容提要:★goto语句★while语句★for语句★几种循环的比较★break语句和continue语句循环型程序设计循环就是在满足一定条件时重复执行一段程序概述C语言可实现循环的语句:用goto和if构成循环while语句do-while语句for语句循环条件循环体★goto语句及用goto构成循环goto语句一般格式:语句标号:用于定义程序中的某个位置。功能:无条件转移语句说明:不能用整数作标号同一个程序中,不允许有同名标号。只能加在可执行语句前面不提倡使用goto语句用途:与if语句一起构成循环结构从多层循环的内层跳转到外层循环goto语句标号;
2、….…..标号:语句;用标识符来表示,不能用数字例6.1用if和goto语句构成循环,求#includemain(){inti,sum=0;i=1;loop:if(i<=100){sum+=i;i++;gotoloop;}printf("%d",sum);}sum=0+1sum=1+2=3sum=3+3=6sum=6+4……sum=4950+100=5050循环初值循环终值循环变量增值循环条件循环体★while语句一般形式:while(表达式)循环体语句;执行流程:表达式循环体假(0)真(非0)while特点:先判断表达式,后执行循环体说明:循环体有
3、可能一次也不执行循环体可为任意类型语句,多条语句时应加{}循环前必须对循环控制变量赋初值,循环体中必须有改变循环控制变量值的语句下列情况,退出while循环条件表达式不成立(为零)循环体内遇break,return,goto例6.2:用while循环求#includemain(){inti,sum=0;i=1;while(i<=100){sum=sum+i;i++;}printf("%d",sum);}循环初值循环终值循环变量增值循环条件循环体例显示1~10的平方#includemain(){inti=1;while(i<=10){
4、printf("%d*%d=%d",i,i,i*i);i++;}}运行结果:1*1=12*2=43*3=94*4=165*5=256*6=367*7=498*8=649*9=8110*10=100★do~while语句一般形式:do循环体语句;while(表达式);执行流程:do循环体表达式假(0)真(非0)while特点:先执行循环体,后判断表达式说明:至少执行一次循环体do-while可转化成while结构分号不可省略例6.3:用do~while循环求#includemain(){inti,sum=0;i=1;do{sum+=i;i++;}w
5、hile(i<=100);printf("%d",sum);}例6.4while和do~while比较#includemain(){inti,sum=0;scanf("%d",&i);do{sum+=i;i++;}while(i<=10);printf("%d",sum);}#includemain(){inti,sum=0;scanf("%d",&i);while(i<=10){sum+=i;i++;}printf("%d",sum);}while循环和do-while循环的区别在于:◆它们执行循环体与计算表达式的先后顺序不同,d
6、o-while先执行循环体,再计算表达式;while循环为先计算表达式,表达式的结果为非零值,则执行循环体语句。◆do-while至少要执行一次循环体。while执行循环体的次数可能为零次或若干次。◆第一次条件为真时,while,do-while等价;第一次条件为假时,二者不同。★for语句一般形式:for([表达式1];[表达式2];[表达式3])循环体语句;执行流程:表达式2循环体假(0)真(非0)for表达式1表达式3(1)先求解表达式1。(2)求解表达式2,若其值为真(值为非0),则执行for语句中指定的内嵌语句,然后执行下面第(3)步。若为假(值为0),则结
7、束循环,转到第(5)步。(3)求解表达式3。(4)转回上面第(2)步骤继续执行。(5)循环结束,执行for语句下面的一个语句例:#includemain(){inti=0;for(i=0;i<10;i++)putchar(‘a’+i);}运行结果:abcdefghijfor语句一般应用形式:for(循环变量赋初值;循环条件;循环变量增值){循环体语句;}说明:for语句中表达式1,表达式2,表达式3类型任意,都可省略,但分号;不可省无限循环:for(;;)for语句可以转换成while结构表达式1;while(表达式2){循环体语句