continue、break、return区别与用法

  • 格式:doc
  • 大小:45.50 KB
  • 文档页数:4

下载文档原格式

  / 4
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

continue、break、return的区别

1、return 语句的作用

(1) return 从当前的方法中退出,返回到该调用的方法的语句处,继续执行。

(2) return 返回一个值给调用该方法的语句,返回值的数据类型必须与方法的声

明中的返回值的类型一致。

(3) return后面也可以不带参数,不带参数就是返回空,其实主要目的就是用于想

中断函数执行,返回调用函数处。

2.break 语句的作用

(1)break在循环体内,强行结束循环的执行,也就是结束整个循环过程,不在判断执行循环的条件是否成立,直接转向循环语句下面的语句。

(2)当break出现在循环体中的switch语句体内时,其作用只是跳出该switch 语句体。

3.continue 语句的作用

终止本次循环的执行,即跳过当前这次循环中continue语句后尚未执行的语句,接着进行下一次循环条件的判断。

下面大家可以具体的看一下例子,可能会更清晰一点:

1.#include

2.int main()

3.{

4.int i = 5,n = 0;

5.while(i--)

6.{

7.if(i == 3)

8.// return;

9.// break;

10.continue;

11.else if(i == 1)

12. n = 6;

13.}

14. n = n + 5;

15. printf("i=%d\n",i);

16. printf("n=%d\n",n);

17. return 0;

18.}

当运行continue时,结果为:

1.i=-1

2.n=11

当运行break时,结果为:

1.i=3

2.i=5

当运行return时,没有结果,说明当执行i==3是已经带出主函数,不会执行下面的语句。

//break是结束整个循环体,continue是结束单次循环

比方说:

while(x++ < 10)

{

if(x == 3)

{

break;

}

printf("%d\r\n", x);

}

结果是输出 1 2 就退出了整个while循环

但是如果使用continue

while(x++ < 10)

{

if(x == 3)

{

continue;

}

printf("%d\r\n", x);

}

结果是:1 2 4 5 6 7 8 9 10 可见他仅仅是不输出3,因为他结束了本次循环

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.

测试代码如下:

#include

#include

int main()

{

char i;

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

{

switch(i)

{

case 0:

printf("i=%d\n",i);

break;

case 1:

printf("i=%d\n",i);

break;

case 2:

printf("i=%d\n",i);

break;

case 3:

printf("i=%d\n",i);

continue;

printf("ok\n");

case 4:

printf("i=%d\n",i);

break;

default:

printf("errp\n");

}

printf("abanda\n");

}

}

输出:

i=0

abanda

i=1

abanda

i=2

abanda

i=3

i=4

abanda