概述
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后面的代码),进行下一次循环。
代码分析:
//break 代码实例
#include <stdio.h>
int main()
{
int i = 1;
while(i<=10)
{
if(i==5)
break;
printf("%d ",i);
i = i + 1;
}
return 0;
}
此处,代码的输出结果是什么?
正确输出为:1 2 3 4
原因分析:当程序运行到if(i==5) 程序就直接终止,直接 退出当前循环。
总结:在循环中只要遇到break,就停止后期所有的循环,直接终止循环。
测试2:
void test2()
{
int i = 0;
for (i = 0; i < 5; i++)
{
if (i == 2)
{
continue;
printf("我没有被打印出来!n");
}
printf("i = %dn", i);
}
test2()的打印结果是 i = 0 i = 1 i = 3 i = 4
i = 2没有被打印,是因为continue 结束了那一次循环,继续了下一次循环
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: %dn", j);
}
test3()是一个两层for循环,break语句只会跳出最近的一层循环,
第二层for循环继续执行
在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;
}
最后
以上就是安详魔镜为你收集整理的c语言中break和continue的用法和区别 break与continue的的用法以及区别test2()的打印结果是 i = 0 i = 1 i = 3 i = 4 i = 2没有被打印,是因为continue 结束了那一次循环,继续了下一次循环test3()是一个两层for循环,break语句只会跳出最近的一层循环, 第二层for循环继续执行的全部内容,希望文章能够帮你解决c语言中break和continue的用法和区别 break与continue的的用法以及区别test2()的打印结果是 i = 0 i = 1 i = 3 i = 4 i = 2没有被打印,是因为continue 结束了那一次循环,继续了下一次循环test3()是一个两层for循环,break语句只会跳出最近的一层循环, 第二层for循环继续执行所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复