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

大家有兴趣可以算一下m和n的值。结果m=6,n=5.