1)简单说下break和continue
break:
跳出离他最近的循环(for或while或do...while)或者switch(开关语句)
continue:
在循环体内使用,当程序执行到continue语句后,在continue后面的语句在本次循环中就会被再被执行,然后跳到离他最近的循环(for或while或do...while),然后重新判断在执行循环体
2)break和continue的使用
break:
因为break能跳出循环(for或while或do...while)和switch(开关语句)两种,所以我们先从循环开始讲:
while:(为了清除看到结果使用printf输出结果)
#include <stdio.h>
int main(void)
{
int n = 10;
while (n > 0){
printf("n:%d!\n", n--);
break;
}
return 0;
}
结果:
n:10!
简单讲解上面程序:
定义一个 int(整型)变量n,并且赋值10
然后进入while循环,首先判断n是否大于0,通过则执行printf格式输出信息n:10(当前n的值),然后n--
然后执行到break语句,跳出离此break最近的循环或者switch
所以当前while循环就结果了,然后执行到return 0程序结束
switch:(为了清楚看到结果使用printf格式化输出结果)
#include <stdio.h>
int main(void)
{
int n = 0;
switch (n)
{
case 0:
printf("0!\n");
break;
case 1:
printf("1!\n");
break;
case 2:
printf("2!\n");
break;
default:
printf("default!\n");
break;
}
return 0;
}
结果:
<span style="color:#333333">0!</span>
简单讲解上面的程序:
定义一个int(整型)变量n,并且赋值0
执行到switch(开关语句),然后进行查找case,发现case 0满足要求,然后进行printf格式化输出0!
然后执行到break,跳出离当前break最近的switch或循环,所以在case 0下面的case 1等等的都不会再被执行
然后执行到return 0,程序结束
PS:break不单能跳出循环(for或while或do...while)还能跳出switch
continue:
只能在循环中使用,当程序执行到continue,在continue后面的语句则不会再被执行,直接跳到循环判断,重新判断然后在执行循环体
(为了清楚看到结果使用printf格式化输出结果)
#include <stdio.h>
int main(void)
{
int n = 10;
while (n > 0) {
n--;
if (n == 5)
continue;
printf("n:%d\n", n);
}
return 0;
}
结果:
n:9
n:8
n:7
n:6
n:4
n:3
n:2
n:1
n:0
简单讲解上面程序:
定义一个int(整型)变量n,并且赋值10
然后执行到while循环,进行判断n是否大于0,大于0执行循环体语句
执行到n--(n = n - 1)
然后执行到if(条件判断),判断当前n是否等于5,如果当前n为5,则执行continue语句,进行跳到while判断(也就是当前while的n是否大于0)
如果当前n不是5,则执行下面的printf格式化输出当前n的值
从结果可以清楚看到n的值为5的时候并没有进行printf输出