break语句主要在switch语句中使用。 对于立即停止循环也很有用。
当 break 语句用于 do-while 循环语句、for 循环语句、while 循环语句中时,可使程序终止循环而执行循环后面的语句, 通常 break 语句总是与 if 语句联在一起。即满足条件时便跳出循环。
break语句语法结构:
break;
例1.break语句的应用
#include <stdio.h> int main() { int num = 5; while (num > 0) { if (num == 3) break; printf("%d\n", num); Num--;} }
结果:
Num 先从五开始,递减;打印出5,4以后,直接break退出while循环,不再循环
注意:
1) break 语句对 if-else 的条件语句不起作用。
2) 在多层循环中, 一个 break 语句只向外跳一层。
3)当您想跳出该循环,进入下一个循环中时,应使用continue语句。该语句忽略了本循环后面的所有语句,进入了下一个循环。
continue 语句只用在 for、while、do-while 等循环体中,常与 if 条件语句一起使用,用来加速循环。
1) break语句工作原理
while(表达式 1)
{ ……
if(表达式 2)break;
……
}
2) continue语句
while(表达式 1)
{ ……
if(表达式 2)continue;
……
}
其执行过程可用下图表示
当您想跳出该循环,进入下一个循环中时,应使用continue语句。该语句忽略了本循环后面的所有语句,进入了下一个循环。
例2.用continue语句打印出5以内不含3的数字。
#include <stdio.h> int main() { int num = 5; while (num > 0) { num--; if (num == 3) continue; printf("%d\n", num); } }
continue 还在循环内,进入下一个循环
例3.打印出7以内不含5的数字
#include <stdio.h> int main() { int nb = 7; while (nb > 0) { nb--; if (nb == 5) continue; printf("%d\n", nb); } }
例4.打印出用户输入的字符,回车键退出,ESC键什么都不干
main() { char c; while(c!=13) { c=getch(); if(c==0X1B) continue; printf("%c\n", c); } }
ASCII码: 13是回车键,0X1B是ESC (escape),换码(溢出)键。
英文:break and continue Statements in C