switch…case in C (Switch Statement in C) with Examples
什么是 C 中的 Switch 语句?
C 中的 switch 语句 测试变量的值并将其与多个案例进行比较。一旦找到 case 匹配,就会执行与该特定 case 相关联的语句块。
交换机块中的每个案例都有不同的名称/编号,称为标识符。将用户提供的值与 switch 块内的所有 case 进行比较,直到找到匹配项。
如果没有找到 case 匹配,则执行 default 语句,控制退出 switch 块。
在本教程中,您将学习-
- 什么是 C 中的 Switch 语句?
- 切换大小写语法
- Switch 语句流程图
- C 中的切换案例示例
- C 中的嵌套开关
- 为什么我们需要 Switch 机箱?
- switch语句的规则
切换案例语法
如何在“C”程序中实现 switch-case 的一般语法如下:
switch( expression )
{
case value-1:
Block-1;
Break;
case value-2:
Block-2;
Break;
case value-n:
Block-n;
Break;
default:
Block-1;
Break;
}
Statement-x;
- 表达式可以是整数表达式,也可以是字符表达式。
- Value-1、2、n 是用于单独识别每个案例的案例标签。请记住,案例标签不应相同,因为它可能会在执行程序时产生问题。假设我们有两个标签与“1”相同的案例。然后在执行程序时,即使您希望程序执行第二个案例,也会执行首先出现的案例。这会在程序中产生问题,并且无法提供所需的输出。
- 大小写标签始终以冒号 ( :) 结尾。这些案例中的每一个都与一个块相关联。
- 一个块只不过是针对特定情况分组的多个语句。
- 每当执行 switch 时,都会将 test-expression 的值与我们在 switch 中定义的所有 case 进行比较。假设测试表达式包含值 4。将该值与所有案例进行比较,直到在程序中找到标签为 4 的案例。一旦找到一个案例,就会执行与该特定案例相关联的语句块,并且控制权会脱离开关。
- 每个 case 中的 break 关键字表示特定 case 的结束。如果我们不在每个 case 中都设置 break,那么即使执行了特定的 case,C 中的 switch 也会继续执行所有 case,直到结束。这不应该发生;因此,我们总是必须在每种情况下放置 break 关键字。 Break一旦执行就会终止case,控制权就会脱离开关。
- 默认情况是可选的。每当 test-expression 的值与 switch 内的任何 case 都不匹配时,就会执行默认值。否则不需要在switch中写default。
- 一旦执行开关,控制将转到语句-x,程序的执行将继续。
Switch 语句流程图
下图说明了如何在 switch case 中选择 case: