c语言break和continue的区别

/*
break与continue的的用法以及区别
1.
当它们用在循环语句的循环体时,break用于立即退出本层循环,而continue仅仅结束本次循环(本次循环体内不执行
continue语句后的其它语句,但下一次循环还会继续执行。
2. 如果有多层循环时,break只会跳出本层循环,不会跳出其他层的循环
3. break可用于switch语句,表示跳出整个switch语句块,而continue则不能单独的用于switch语句。但是continue可以用于循环内部的switch语句。
4. break和continue语句在循环内的switch语句中使用时,是有区别的。在这种情况下的break是指跳出switch语句块(switch语句块的代码仍然执行)。而这种情况下的continue是指结束本次循环(不在执行switch后面的代码),进行下一次循环
*/
/*
test1()的打印结果是 i = 0  i = 1  已经跳出循环
是因为break语句直接结束了本层的循环, 直接执行循环后边的语句
printf("已经跳出循环\n");
*/
void test1()
{int i = 0;for (i = 0; i < 5; i++){if (i == 2){break;printf("我没有被打印出来!\n");}printf("i = %d\n", i);}printf("已经跳出循环\n");
}
/*
test2()的打印结果是 i = 0 i = 1  i = 3  i = 4
i = 2没有被打印,是因为continue 结束了那一次循环,继续了下一次循环
*/
void test2()
{int i = 0;for (i = 0; i < 5; i++){if (i == 2){continue;printf("我没有被打印出来!\n");}printf("i = %d\n", i);}
}
/*
test3()是一个两层for循环,break语句只会跳出最近的一层循环,
第二层for循环继续执行
*/
void test3()
{int i = 0;int j = 0;for (i = 0; i < 5; i++){for (j = 0; j < 5; j++){if (j == 2){break;}printf("Hello: %d\n", j);}printf("World: %d\n", i);}
}
/*
在test4()中,break的作用只会跳出
switch()语句块,执行swith语句块后面的程序printf("Hello World!\n");
而不是跳出循环。
与test5()进行对比,continue是结束本次循环,进行下一次循环,
switch()语句块后边的内容不会被打印
*/
void test4()
{int i = 0;for (i = 0; i < 2; i++){int j = 5;switch (j){case 4:printf("你好 %d !!!\n", 4);break;case 5:printf("你好 %d !!!\n", 5);break;case 6:printf("你好 %d!!!\n", 6);break;}printf("Hello World!\n");}
}
/*
test5()中循环内部的switch语句中的continue是直接结束本次循环,
switch语句块后面的printf("Hello World!\n");将不会被执行。
*/
void test5()
{int i = 0;for (i = 0; i < 2; i++){int j = 5;switch (j){case 4:printf("你好 %d !!!\n", 4);continue;case 5:printf("你好 %d !!!\n", 5);continue;case 6:printf("你好 %d!!!\n", 6);continue;}printf("Hello World!\n");}
}
int main()
{test1();printf("---------------------------------------------------------");test2();printf("---------------------------------------------------------");test3();printf("---------------------------------------------------------");test4();test5();printf("---------------------------------------------------------");system("pause");return 0;
}
---------------------
作者:魔尊长安
来源:CSDN
原文:https://blog.csdn.net/u010259906/article/details/47185655
版权声明:本文为博主原创文章,转载请附上博文链接!

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值