前言
本文将通过简单的实例来详细分析在C语言中break语句和continue语句的用法和区别,欢迎大家批评指正。(部分内容稍有重复,大家可自行选择跳转目录)
一、循环体中两者的作用
1.while循环
我们先看一个循环示例:此程序在屏幕上打印出数字1—10
int main()
{
int i = 1;
while (i <= 10)
{
printf("%d ", i);
i++;
}
return 0;
}
运行结果:
(1)break语句
我们在刚才的代码添加两行代码并使用break语句,使其变成以下程序:
int main()
{
int i = 1;
while (i <= 10)
{
if (i == 5)
break;
printf("%d ", i);
i++;
}
return 0;
}
此程序运行的结果如下图: 对此程序的运行结果进行分析: 总结: while 循环中的break是用于永久终止循环
(2)continue语句
还是刚才的代码,我们将其中的break 语句替换为continue语句
int main()
{
int i = 1;
while (i <= 10)
{
if (i == 5)
continue;
printf("%d ", i);
i++;
}
return 0;
}
运行该程序,得到结果: 我们可以看出,该程序并未执行结束,以下是对该程序的分析:
总结:continue 语句在while 循环中的作用是终止本次循环,即continue后面的代码不会执行,程序会跳转至while语句的判断部分,由于此时 i 等于5并且永远满足判断条件小于等于10,因此该循环将进入死循环,一直进行下去。
该示列对continue语句的用法不太直观,因此我们进行修改,将上述代码中的i++ 语句放置while循环里的最前面,并对i 的初值以及循环条件做以修改,以保证改进后的代码依旧可在屏幕上打印数字1—10 以下是改进后代码:
int main()
{
int i = 0;
while (i < 10)
{
i++;
if (i == 5)
continue;
printf("%d ", i);
}
return 0;
}
以下是运行结果: 然后我们在代码中加入continue 语句:
int main()
{
int i = 0;
while (i <10)
{
i++;
if (i == 5)
continue;
printf("%d ", i);
}
return 0;
}
以下是运行结果:
2.for循环
还是刚才的示例,在屏幕上打印数字1—10,我们用for循环实现
int main()
{
int i = 0;
for (i = 1; i <= 10; i++)
{
printf("%d ", i);
}
return 0;
}
程序运行结果:
(1)break语句
代码:
int main()
{
int i = 0;
for (i = 1; i <= 10; i++)
{
if (i == 5)
{
break;
}
printf("%d ", i);
}
return 0;
}
结果分析: 总结: for循环中的break同while语句一样,是用于永久终止循环。
(2)continue语句
代码:
int main()
{
int i = 0;
for (i = 1; i <= 10; i++)
{
if (i == 5)
{
continue;
}
printf("%d ", i);
}
return 0;
}
结果分析: 总结: for循环中的continue同while语句一样,是用于跳出本次循环,进行下一次循环。
3.do while循环
示例:输出1—10
int main()
{
int i = 0;
do
{
i++;
printf("%d ", i);
} while (i < 10);
return 0;
}
结果:
(1)break语句
示例:
int main()
{
int i = 0;
do
{
i++;
if (i == 5)
{
break;
}
printf("%d ", i);
} while (i < 10);
return 0;
}
结果:
(2)continue语句
示例:
int main()
{
int i = 0;
do
{
i++;
if (i == 5)
{
continue;
}
printf("%d ", i);
} while (i < 10);
return 0;
}
结果:
二、switch语句
continue语句只用于循环语句中,不能用于switch语句
而break语句可用于switch语句中。当其使用时可使程序跳出switch而执行switch以后的语句。如果没有break语句,则会从满足条件的地方(即与switch(表达式)括号中表达式匹配的case)开始执行,直到switch结构结束。 示例:输入数字1—7,其中1—5输出weekday,6、7输出weekend.
int main()
{
int day=0;
scanf("%d", &day);
switch (day)
{
case 1:
case 2:
case 3:
case 4:
case 5:
printf("weekday\n");
break;
case 6:
case 7:
printf("weekend\n");
break;
}
return 0;
}
结果:
总结
本文对C语言中break和continue语句详细做了分析,由于三种循环(while、for、do while)在使用上有些差异,因此在实际应用中要具体判断,同时也感谢大家的观看,以上是本文的全部内容。
|