switch
语句也是一种分支语句。 常常用于多分支的情况。
switch语句一般这样出现
switch(整形表达式)
{
case :整形的常量表达
要写的语句;
}
要注意的是,在switch语句中我们不能直接进行分支,必须依靠break语句才可以实现分支。
在写了一些switch语句后,我建议大家
在最后一个 case 语句的后面加上一条 break语句。 (之所以这么写是可以避免出现在以前的最
后一个 case 语句后面忘了添加 break语句)。
再就是defult字句,
如果表达的值与所有的
case
标签的值都不匹配怎么办?
其实也没什么,结构就是所有的语句都被跳过而已。
程序并不会终止,也不会报错,因为这种情况在
C
中并不认为适合错误。
但是,如果你并不想忽略不匹配所有标签的表达式的值时该怎么办呢?
你可以在语句列表中增加一条
default
子句,把下面的标签
default
:
写在任何一个
case
标签可以出现的位置。
当
switch
表达式的值并不匹配所有
case
标签的值时,这个
default
子句后面的语句就会执行。
所以,每个switch语句中只能出现一条default子句。
![](https://img-blog.csdnimg.cn/482ab46950684ba18fc6b7ddbef1c8f8.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAQXBwYXJhdGVfTFVNT1M=,size_8,color_FFFFFF,t_70,g_se,x_16)
大家有兴趣可以算一下m和n的值。结果m=6,n=5.