c语言循环语句和循环控制例题解析.doc

c语言循环语句和循环控制例题解析.doc

ID:50504947

大小:42.02 KB

页数:9页

时间:2020-03-10

c语言循环语句和循环控制例题解析.doc_第1页
c语言循环语句和循环控制例题解析.doc_第2页
c语言循环语句和循环控制例题解析.doc_第3页
c语言循环语句和循环控制例题解析.doc_第4页
c语言循环语句和循环控制例题解析.doc_第5页
资源描述:

《c语言循环语句和循环控制例题解析.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、一、循环控制(一)、break语句break语句通常用在循环语句和开关语句中。当break用于开关语句switch中时,可使程序跳出switch而执行switch以后的语句;如果没有break语句,则将成为一个死循环而无法退出。break在switch中的用法已在前面介绍开关语句时的例子中碰到,这里不再举例。当break语句用于do-while、for、while循环语句中时,可使程序终止循环而执行循环后面的语句,通常break语句总是与if语句联在一起。即满足条件时便跳出循环。例如:intmain(intargc,char*

2、argv[]){intsn=0,i;for(i=1;i<=100;i++){if(i==51)break;/*如果i等于51,则跳出循环*/sn+=i;/*1+2+……+50*/}printf(%d,sn);}可以看出,最终的结果是1+2+……+50。因为在i等于51的时候,就跳出循环了。自己写写怎样在while和do--while循环中增加break语句。注意:1.break语句对if-else的条件语句不起作用。2.在多层循环中,一个break语句只向外跳一层。例如:intmain(intargc,char*argv[

3、]){inti,j;printf(ij);for(i=0;i<2;i++)for(j=0;j<3;j++){if(j==2)break;printf(%d%d,i,j);}}输出结果为:ij00011011当i==0,j==2时,执行break语句,跳出到外层的循环,i变为1。(二)、continue语句continue语句的作用是跳过循环本中剩余的语句而强行执行下一次循环。continue语句只用在for、while、do-while等循环体中,常与if条件语句一起使用,用来加速循环。例如:intmain(intar

4、gc,char*argv[]){intsn=0,i;for(i=1;i<=100;i++){if(i==51)continue;/*如果i等于51,则结束本次循环*/sn+=i;/*1+2+……+50+52+……+100*/}printf(%d,sn);}从程序中可以看出,continue语句只是当前的值没有执行,也就是说当前的值跳过去了,接着执行下次循环。intmain(intargc,char*argv[]){inti,j;printf(ij);for(i=0;i<2;i++)for(j=0;j<3;j++){if

5、(j==1)continue;printf(%d%d,i,j);}}输出结果为:ij00021012(三)、goto语句goto语句是一种无条件转移语句,与BASIC中的goto语句相似。goto语句的使用格式为:goto标号;其中标号是TurboC2.0中一个有效的标识符,这个标识符加上一个:一起出现在函数内某处,执行goto语句后,程序将跳转到该标号处并执行其后的语句。标号既然是一个标识符,也就要满足标识符的命名规则。另外标号必须与goto语句同处于一个函数中,但可以不在一个循环层中。通常goto语句与if条件语句连用

6、,当满足某一条件时,程序跳到标号处运行。goto语句通常不用,主要因为它将使程序层次不清,且不易读,但在多层嵌套退出时,用goto语句则比较合理。intmain(intargc,char*argv[]){intsn=0,i;for(i=1;i<=100;i++){if(i==51)gotoloop;/*如果i等于51,则跳出循环*/sn+=i;/*1+2+……+50*/}loop:;printf(%d,sn);}可以看出,这儿的goto语句和break作用很类似。这儿的loop:;printf(%d,sn);也可以写成

7、loop:printf(%d,sn);intmain(intargc,char*argv[]){intsn=0,i;for(i=1;i<=100;i++){if(i==51)gotoloop;/*如果i等于51,则跳出本次循环*/sn+=i;/*1+2+……+50+52+……+100*/loop:;}printf(%d,sn);}可以看出这儿的loop语句和continue的作用类似。但是某些情况下又必须使用goto语句,否则会让程序大大臃肿。如:intmain(intargc,char*argv[]){inti,j,

8、k;printf(ijk);for(i=0;i<2;i++)for(j=0;j<3;j++)for(k=0;k<3;k++){if(k==2)gotoloop;printf(%d%d%d,i,j,k);}loop:;}输出结果为:ijk000001如果不使用goto语

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。