C Switch 语句

Switch 语句

您可以使用 switch 语句。

switch 语句选择要执行的许多代码块之一:

语法

switch(expression) {
  case x:
    // code block
    break;
  case y:
    // code block
    break;
  default:
    // code block
}

这就是它的工作原理:

  • switch 表达式只计算一次
  • 将表达式的值与每个case的值进行比较
  • 如果匹配,则执行关联的代码块
  • break 语句跳出 switch 块并停止执行
  • default 语句是可选的,指定在没有大小写匹配时运行的一些代码

以下示例使用工作日编号来计算工作日名称:

实例

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;
}

// 输出 "Thursday" (day 4)
亲自试一试 »

break 关键字

当 C 到达 break 关键字时,它会跳出 switch 块。

这将停止块内更多代码和案例测试的执行。

找到匹配项并完成工作后,就该休息一下了。 无需进行更多测试。

中断可以节省大量执行时间,因为它"忽略" 执行 switch 块中的所有其余代码。



default 默认关键字

default 关键字指定在没有大小写匹配时要运行的一些代码:

实例

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");
}

// 输出 "Looking forward to the Weekend"
亲自试一试 »

注意: default 关键字必须作为 switch 中的最后一条语句,并且不需要 break。