如何理解switch-case语句
时间: 2024-09-06 20:08:21 浏览: 19
`switch-case`语句是C语言中的一种控制流程语句,它通过比较表达式的值来决定执行哪个相关的代码块。当你有一个固定的表达式(通常是整数或字符)需要与一系列可能的常量进行匹配时,它可以简化代码并提高可读性。基本语法如下:
```c
switch(expression) {
case constant1:
// 执行当expression等于constant1时的代码
break;
case constant2:
// 执行当expression等于constant2时的代码
break;
...
default:
// 如果expression不匹配任何case,则执行这里的代码(可选)
}
```
每个`case`后面跟着一个可能匹配的常量,如果`expression`的值与某个`case`的常量相等,那么该`case`下的代码块就会被执行。`break`关键字用于结束当前`case`的执行,避免"穿透"到其他`case`。如果不写`break`,则会继续执行下一个`case`,直到遇到`break`或`default`。
举个例子[^1]:
```c
int choice = 3;
switch(choice) {
case 1:
printf("You chose option 1\n");
break;
case 2:
printf("You chose option 2\n");
break;
case 3:
printf("You chose option 3\n");
break;
default:
printf("Invalid choice\n");
}
```
在这个例子中,因为`choice`的值是3,所以执行的是`case 3`的代码块。