if语句仅允许在两个操作中选择,当需要在多个操作中进行选择时,可以使用switch语句。其一般形式如下:
switch(表达式0)
{
case 常量表达式1: 语句1
… …
case 常量表达式i:语句i
… …
case 常量表达式m:语句m
default: 语句n
}
首先计算表达式0的值,如果该值和某个常量表达式i的值相同,则依次执行语句i后的语句,直到所有语句执行完或遇到break语句为止。
如果表达式0的值不同于任何常量表达式的值,则执行语句n。
关于switch语句强调以下几点:
① 常量表达式中不允许出现变量。
② 每个case常量表达式仅起标号/站牌的作用。另外,case与常量表达式之间要有空格。
③ 如果想在执行完语句i后就结束switch语句,可加上break语句来实现;最后一个分支可以不加break语句
④ 语句i既可以为单条语句,也可以是多条语句。即使是多条语句也无需用 { }构成复合语句。
⑤ default子句可省略,且可出现在任何位置。
⑥ 表达式要求是整型表达式。
⑦ 每个常量表达式通常是表达式0的可能取值之一。