break和continue语句

1、break语句可以从循环体内跳出循环体,即提前结束循环,接着执行循环下面的语句。

一般形式:break;

break不能用于循环语句和switch语句之外的任何其他语句中。

注意:(1)break语句对if-else的条件语句不起作用。

(2)在多层循环中,一个break语句就向外跳一层。

例:

#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);
    }
}

程序的作用是计算r=1到r=10的圆的面积,直到面积area大于100为止。从上面的for循环可以看到:当area>100时,执行break语句,提前结束循环,即不再继续执行其余的几次循环。

例:

#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");

}

2、continue语句

作用为结束本次循环,即跳过循环体中下面尚未执行的语句,接着进行下一次是否执行循环的判断。

一般形式:continue;

区别:(1)continue语句只结束本次循环,而不是终止整个循环的执行。

(2)break语句则是结束整个循环过程,不再判断执行循环的条件是否成立。

例:显示输入的字符,如果按的是Esc键,则退出循环;如果是enter键,则不做任何处理,继续输入下一个字符。

#include<conio.h>

void main()
{
    char ch;
    for( ; ; )
    {
        ch=getch();
        if(ch==27)
            break;
        if(ch==13)
            continue;
        putch(ch);
    }
    getch();
}

 

posted on 2019-01-17 21:52 巫师笔记 阅读() 评论() 编辑 收藏

版权声明:本文为lvfengkun原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/lvfengkun/p/10284760.html