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(计算机语言)
这是因为这个switch...case句块的执行顺序是这样的,茄历喊一颤野开始k=8,在case从句中没有匹配的,所以它会执行defult句块中的内容,因为没有break语句来中断,所以在那之后会继续往下执行case10,case11句块中的内容,直到触底退出,因为这个过程共有3个k+=1语句,所以k被加了3次1,烂行这样k的值就从8变成了11。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)