您的位置:首页 > 编程语言 > C语言/C++

C语言中break和continue的区别

2016-08-31 00:00 309 查看
摘要: C语言中break和continue的区别

1.break语句
break语句可以用来从循环体内跳出循环体,即提前结束循环,接着执行循环下面的语句
一般形式:
break;
注意:break语句不能用于循环语句和switch语句之外的任何其他语句中。

比如:

unsigned char i, j=50;

for(i=0;i<100;i++)

{

if(i>j) break;

}

j=i;

当程序循环到i=51时,执行break语句,跳出for循环,开始执行j=i这条语句。

2.continue语句
作用为结束本次循环,即跳过循环体中下面尚未执行的语句,接着进行下一次是否执行循环的判定.
一般形式:
continue;

比如:

unsigned char i, j=50;

for(i=0;i<100;i++)

{

if(i>j) continue;

j=i;

}

当程序循环到i=51时,执行continue语句,结束本次循环,即不执行下面的j=i语句,而是执行i++,即i=52,故i<100,循环的条件成立,循环继续执行,直到i<100的条件不成立,for循环才终止。

总之:
continue语句只结束本次循环,而不是终止整个循环的执行。

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

1.continue只结束上一级本次循环,针对只是for while两大类循环语句。

2.break结束上一级整个循环语句,可以是for while,还可以为swtich.

测试代码如下:

1 #i nclude <stdio.h>
2 #i nclude <string.h>
3
4 int main()
5 {
6 char i;
7 for(i=0;i<5;i++){
8 switch(i){
9 case 0: printf("i=%d\n",i);break;
10 case 1: printf("i=%d\n",i);break;
11 case 2: printf("i=%d\n",i);break;

12 case 3: printf("i=%d\n",i);continue;printf("ok\n");
13 case 4: printf("i=%d\n",i);break;
14 default: printf("errp\n");
15 }
16 printf("abanda\n");
17 }
18 }

输出:

i=0
abanda
i=1
abanda
i=2
abanda
i=3
i=4
abanda
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息