C语言中的break
语句用于中断循环的执行(while
,do while
和for
)和switch case
。
在内循环的情况下,仅终止内循环的控制。
C语言中有两种使用break
关键字:
- 与
switch
一起使用 - 与循环语句一起使用
语法如下:
jump-statement;
break;
C语言语法中使用break
语句可以是while
循环,do while
循环,for
循环或switch case
语句中。
C语言break
语句的流程图 -
switch case的break语句示例
有关switch case
的break
语句示例,请参考以下语句查看: http://www.yiibai.com/cprogramming/c-switch.html
在循环中的break语句示例
创建一个源文件:loop-break.c,其代码如下所示 -
#include <stdio.h>
void main() {
int i = 1;//initializing a local variable
//starting a loop from 1 to 10
for (i = 1;i <= 10;i++) {
printf("%d \n", i);
if (i == 5) {//if value of i is equal to 5, it will break the loop
break;
}
}//end of for loop
}
执行上面代码,得到以上结果 -
1
2
3
4
5
正如您可以在控制台输出中看到的,在i == 5
之后,循环不会打印6
到10
之后的数值。
C断言与内循环
在这种情况下,它只打破内部循环,而不是外部循环。创建一个源文件:inner-loop-break.c,其代码如下所示 -
#include <stdio.h>
#include <conio.h>
void main() {
int i = 1, j = 1;//initializing a local variable
for (i = 1;i <= 3;i++) {
for (j = 1;j <= 3;j++) {
printf("%d %d\n", i, j);
if (i == 2 && j == 2) {
break;//will break loop of j only
}
}
}//end of for loop
}
执行上面代码,得到以上结果 -
1 1
1 2
1 3
2 1
2 2
3 1
3 2
3 3
从上面控制台上的输出中可以看到,2 3
不打印,因为 i == 2
和j == 2
后有break
语句退出的内部循环。但是打印3 1
,3 2
和3 3
,因为break
语句只适用于内循环。