switch中的break作用是什么?若不加,会出现什么情况?请举例说明

如题所述

1.switch中的break作用是结束switch循环,就是说不再执行下面的case语句。

2.如果不加的话,当你在一个case语句中执行完毕后,会进入下一个case语句,继续switch循环。但是,如果某个分支中没有语句,那么也可以不写break。

3.举例:

如下图程序所示,student=10,应循环case10,输出“学生人数为10人”,但因为没有break,继续switch循环还会执行case20,输出“学生人数为20人”,case20这句语句含有break,结束循环。

这样就会出现问题,程序要求应当只需要输出“学生人数为10人”即可,但实际程序输出了两个printf。若在case10后加上break,则正确。

扩展资料

break语句通常用在循环语句和开关语句中。当break用于开关语句switch中时,可使程序跳出switch而执行switch以后的语句;

如果没有break语句,则会从满足条件的地方(即与switch(表达式)括号中表达式匹配的case)开始执行,直到switch结构结束。

当break语句用于do-while、for、while循环语句中时,可使程序终止循环。而执行循环后面的语句,通常break语句总是与if语句联在一起。即满足条件时便跳出循环。

参考资料:百度百科——continue(计算机语言)

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-11-17

1.switch中的break作用是结束switch循环,就是说不再执行下面的case语句。

2.如果不加的话,当你在一个case语句中执行完毕后,会进入下一个case语句,继续switch循环。但是,如果某个分支中没有语句,那么也可以不写break。

3.举例:

如下图程序所示,student=10,应循环case10,输出“学生人数为10人”,但因为没有break,继续switch循环还会执行case20,输出“学生人数为20人”,case20这句语句含有break,结束循环。

这样就会出现问题,程序要求应当只需要输出“学生人数为10人”即可,但实际程序输出了两个printf。若在case10后加上break,则正确。

扩展资料:

1.在c语言中,break和continue易出现混用。continue语句的作用是跳过本次循环体中余下尚未执行的语句,立即进行下一次的循环条件判定,可以理解为仅结束本次循环。

2.不管是 for 循环,还是 while 循环,或者是 do…while 循环,都可以用 break 跳出来,但是 break 只能跳出一层循环。当有多层循环嵌套的时候,break只能跳出“包裹”它的最里面的那一层循环,无法一次跳出所有循环。在多层 switch 嵌套的程序中,break 也只能跳出其所在的距离它最近的 switch。

3.continue 的用法十分简单,其作用为结束本次循环,即跳过循环体中下面尚未执行的语句,然后进行下一次是否执行循环的判定。

参考资料:百度百科——continue(计算机语言)

本回答被网友采纳
第2个回答  2018-11-28

作用是:用于跳出当前的case

例如:
switch(xx)
{
case 1:
//代码执行到此处
case 2:
default:
}

如果在case1里面添加了breakl那么,执行完case1里面的代码,程序就跳出switch。

如果没有break的话,那么程序执行完case1就执行case2,一直执行下去。直到碰到break或者switch结束。

扩展资料

break语句通常用在循环语句和开关语句中。当break用于开关语句switch中时,可使程序跳出switch而执行switch以后的语句;

如果没有break语句,则会从满足条件的地方(即与switch(表达式)括号中表达式匹配的case)开始执行,直到switch结构结束。

当break语句用于do-while、for、while循环语句中时,可使程序终止循环。而执行循环后面的语句,通常break语句总是与if语句联在一起。即满足条件时便跳出循环。

本回答被网友采纳
第3个回答  2019-12-23
1.switch中的break作用是结束switch循环,就是说不再执行下面的case语句。
2.如果不加的话,当你在一个case语句中执行完毕后,会进入下一个case语句,继续switch循环。但是,如果某个分支中没有语句,那么也可以不写break。
3.举例:
如下图程序所示,student=10,应循环case10,输出“学生人数为10人”,但因为没有break,继续switch循环还会执行case20,输出“学生人数为20人”,case20这句语句含有break,结束循环。
这样就会出现问题,程序要求应当只需要输出“学生人数为10人”即可,但实际程序输出了两个printf。若在case10后加上break,则正确。
第4个回答  2009-04-23
在switch语句中,“case 常量表达式”只相当于一个语句标号, 表达式的值和某标号相等则转向该标号执行,但不能在执行完该标号的语句后自动跳出整个switch 语句.

C语言还提供了一种break语句,专用于跳出switch语句,break 语句只有关键字break,没有参数。在每一case语句之后增加break 语句, 使每一次执行之后均可跳出switch语句,从而避免输出不应有的结果。
相似回答