switch case的执行
时间: 2023-10-23 07:35:47 浏览: 62
switch case 是一种条件语句,一般用于根据不同的条件执行不同的代码块。它的执行方式如下:
1. 首先,将需要判断的表达式与每个 case 的值进行比较。
2. 如果某个 case 的值与表达式的值匹配,那么该 case 下的代码块会被执行。
3. 如果没有任何 case 的值与表达式的值匹配,而且存在 default 语句,那么 default 语句下的代码块会被执行。
4. 如果没有任何 case 的值与表达式的值匹配,并且没有 default 语句,那么 switch case 结束。
需要注意的是,一旦一个 case 下的代码块执行完毕,如果没有使用 break 语句,程序将会继续执行下一个 case 的代码块(即发生"穿透"现象)。如果希望在某个 case 下执行完毕后立即退出 switch case,可以使用 break 语句。
以下是一个简单的 switch case 示例:
```c
int num = 2;
switch (num) {
case 1:
printf("Number is 1");
break;
case 2:
printf("Number is 2");
break;
case 3:
printf("Number is 3");
break;
default:
printf("Number is not 1, 2, or 3");
break;
}
```
在这个示例中,num 的值为 2,因此与 case 2 匹配。所以会输出 "Number is 2"。