Board logo

标题: 巫师笔记 break和continue语句 [打印本页]

作者: look_w    时间: 2019-1-17 21:19     标题: 巫师笔记 break和continue语句

1、break语句可以从循环体内跳出循环体,即提前结束循环,接着执行循环下面的语句。
一般形式:break;
break不能用于循环语句和switch语句之外的任何其他语句中。
注意:(1)break语句对if-else的条件语句不起作用。
(2)在多层循环中,一个break语句就向外跳一层。
例:
[url=][/url]
#include<stdio.h>void main(){    int r;    double pi=3.14159,area;    for(r=1;r<=10;r++)    {        area=pi*r*r;        if(area>100)        {            break;        }        printf("r=%d,area=%f\n",r,area);    }}[url=][/url]

程序的作用是计算r=1到r=10的圆的面积,直到面积area大于100为止。从上面的for循环可以看到:当area>100时,执行break语句,提前结束循环,即不再继续执行其余的几次循环。
例:
[url=][/url]
#include<conio.h>#include<stdio.h>void main(){    int i;    char c;    i=1;    while(1)/*设置循环*/    {        c='\0';/*变量赋初值*/        while(c!=13&&c!=27)/*键盘接受字符直到按回车或Esc键*/        {            c=getch();            printf("%c\n",c);        }        if(c==27)            break;/*判断若为Esc键则退出循环*/        i++;        printf("The No. is %d\n",i);    }    printf("The end");}[url=][/url]

2、continue语句
作用为结束本次循环,即跳过循环体中下面尚未执行的语句,接着进行下一次是否执行循环的判断。
一般形式:continue;
区别:(1)continue语句只结束本次循环,而不是终止整个循环的执行。
(2)break语句则是结束整个循环过程,不再判断执行循环的条件是否成立。
例:显示输入的字符,如果按的是Esc键,则退出循环;如果是enter键,则不做任何处理,继续输入下一个字符。
[url=][/url]
#include<conio.h>void main(){    char ch;    for( ; ; )    {        ch=getch();        if(ch==27)            break;        if(ch==13)            continue;        putch(ch);    }    getch();}




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0