每个 case 中的 break 关键字表示特定 case 的结束。如果我们不在每个 case 中放置 break,那么即使执行了特定 case,C 中的 switch 仍将继续执行所有 case,直到到达结尾。这不应该发生;因此我们总是必须在每个 case 中放置 break 关键字。一旦 case 执行完毕,break 将终止 case,并且控制权将脱离 switch。
default case 是可选的。只要 test-expression 的值与 switch 中的任何 case 都不匹配,就会执行 default 。其他wise,switch中不需要写default。
在这个程序中,由于变量 num 中存储的值为 8,因此 switch 将执行 case 标签为 XNUMX 的 case。执行完该 case 之后,控制权将脱离 switch,程序将通过在输出屏幕上打印该值来终止并显示成功结果。
尝试改变变量 num 的值并注意输出的变化。
例如,我们考虑以下wing 程序默认:
#include <stdio.h>
int main() {
int language = 10;
switch (language) {
case 1:
printf("C#\n");
break;
case 2:
printf("C\n");
break;
case 3:
printf("C++\n");
break;
default:
printf("Other programming language\n");}}
Other programming language
在 C 中使用 switch case 时,可以使用唯一标签对多个 case 进行分组。您需要在每个 case 中引入一个 break 语句,以便在 switch 语句的末尾进行分支。
当没有其他匹配时,可选的默认案例将运行。
我们考虑以下wing switch 语句:
#include <stdio.h>
int main() {
int number=5;
switch (number) {
case 1:
case 2:
case 3:
printf("One, Two, or Three.\n");
break;
case 4:
case 5:
case 6:
printf("Four, Five, or Six.\n");
break;
default:
printf("Greater than Six.\n");}}
Four, Five, or Six.
C 语言中的嵌套 Switch
In
C
,我们可以将内层开关嵌入到外层开关中。此外,内层开关和外层开关的 case 常量可以具有共同的值,并且不会发生任何冲突。