C 语言 Switch 语句
Switch 语句
如果需要写 很多 的 if..else
语句时,您可以使用 switch
语句替代。
switch
语句会从多个代码块中选择一个执行:
语法
switch(expression) {
case x:
// code block
break;
case y:
// code block
break;
default:
// code block
}
以下就是它的工作原理:
- switch 表达式计算一次。
- 将表达式的值与每种情况的值进行比较。
- 如果存在匹配项,则执行关联的代码块。
- break 和 default 关键字是可选的,将在本章后面介绍
下面的实例使用工作日编号来计算工作日名称:
实例
#include <stdio.h>
int main() {
int day = 4;
switch (day) {
case 1:
printf("Monday");
break;
case 2:
printf("Tuesday");
break;
case 3:
printf("Wednesday");
break;
case 4:
printf("Thursday");
break;
case 5:
printf("Friday");
break;
case 6:
printf("Saturday");
break;
case 7:
printf("Sunday");
break;
}
return 0;
}
break 关键字
当 C 语言运行到一个 break
关键字时,它就会跳出 switch
代码块。
这时将停止在代码块内执行更多代码,和对其他 case 条件的判断。
break
可以节省大量执行时间,因为它 "忽略" switch 块中所有其余代码的执行。default 关键字
default
关键字指定在 case
值匹配的情况下要运行的代码:
实例
#include <stdio.h>
int main() {
int day = 4;
switch (day) {
case 6:
printf("Today is Saturday");
break;
case 7:
printf("Today is Sunday");
break;
default:
printf("Looking forward to the Weekend");
}
return 0;
}
注意:
default
关键字必须用作 switch
中的最后一条语句,并且不需要 break
关键字。