C语言break和continue语句的用法
1. **break语句**:
- 用于立即退出循环或开关语句。
- 当在循环体内执行到`break`语句时,会立即退出该循环或开关语句,并继续执行该循环或开关语句之后的代码。
2. **continue语句**:
- 用于跳过当前循环体中的剩余部分,并立即开始下一次迭代。
- 当在循环体内执行到`continue`语句时,会跳过该次迭代中剩余的代码,并开始下一次迭代。
示例:
```c
#include
int main() {
int i, j;
for (i = 0; i < 3; i++) {
for (j = 0; j < 5; j++) {
if (j == 3) {
break; // 当j等于3时,退出内层循环
}
printf("i = %d, j = %d\n", i, j);
}
if (i == 1) {
continue; // 当i等于1时,跳过外层循环的剩余部分,直接开始下一次迭代
}
printf("After inner loop, i = %d\n", i);
}
return 0;
}
```
在这个例子中,当`j`等于3时,`break`语句会结束内层循环;而当`i`等于1时,`continue`语句会使程序跳过外层循环的剩余部分,并开始下一次迭代。
break和continue语句都可以用在循环中,用来跳出循环(结束循环);break语句还可以用在switch语句中,用来跳出switch语句。
break语句
break语句通常用在循环语句和开关语句中。当break用于开关语句switch中时,可使程序跳出switch而执行switch以后的语句;如果没有break语句,则将成为一个死循环而无法退出。break在switch 中的用法已在前面介绍开关语句时的例子中碰到,这里不再举例。当break语句用于do-while、for、while循环语句中时,可使程序终止循环而执行循环后面的语句,通常break语句总是与if语句联在一起,即满足条件时便跳出循环。
#include
intmain(void){
inti=0;
charc;
while(1){/*设置循环*/
c='\0';/*变量赋初值*/
while(c!=13&&c!=27){/*键盘接收字符直到按回车或Esc键*/
c=getch();
printf("%c\n",c);
}
if(c==27)
break;/*判断若按Esc键则退出循环*/
i++;
printf("The No. is %d\n",i);
}
printf("The end");
return0;
}
注意:
break语句对if-else的条件语句不起作用;
在多层循环中,一个break语句只向外跳一层。
continue 语句
continue语句的作用是跳过循环体中剩余的语句而强行执行下一次循环。continue语句只用在for、while、do-while等循环体中,常与if条件语句一起使用,用来加速循环。对比一下break和continue。while的用法:while(表达式1){ …… if(表达式2) break; ……}continue的用法:while(表达式1){ …… if(表达式2) continue; ……}
#include
intmain(void){
charc;
while(c!=13){/*不是回车符则循环*/
c=getch();
if(c==0X1B)
continue;/*若按Esc键不输出便进行下次循环*/
printf("%c\n",c);
}
return0;
}