C语言中的switch case

C语言中的switch case

C语言中的switch case

在C语言中,switch case语句是一种用于多分支选择的结构,可以替代多个if else语句。switch case语句根据表达式的值来判断执行哪个分支,是一种更加简洁、清晰的流程控制语句。本文将详细介绍switch case语句的用法、语法以及一些注意事项。

语法

switch case语句的基本语法如下所示:

switch (表达式) {
    case 值1:
        // 若表达式的值等于值1,则执行这里的代码
        break;
    case 值2:
        // 若表达式的值等于值2,则执行这里的代码
        break;
    // 可以有多个case
    default:
        // 如果表达式的值和所有的case都不匹配,则执行default中的代码
}
  • switch后面的括号中是一个表达式,该表达式的值将会被用来匹配不同的case分支。
  • case后面是要匹配的值,如果表达式的值等于case后面指定的值,那么就会执行该分支下面的代码。
  • 每个case分支都要以break;结束,表示跳出switch语句,否则会接着执行下一个分支的代码。
  • 如果表达式的值与所有的case都不匹配,则执行default中的代码,default是可选的。

示例

下面通过一个简单的示例来演示switch case语句的使用:

#include <stdio.h>

int main() {
    int num = 3;

    switch(num) {
        case 1:
            printf("星期一\n");
            break;
        case 2:
            printf("星期二\n");
            break;
        case 3:
            printf("星期三\n");
            break;
        default:
            printf("其他\n");
    }

    return 0;
}

在这个示例中,num的值是3,根据switch case语句的匹配规则,程序会执行case 3中的代码,输出”星期三”。运行上面的代码,得到的输出为:

星期三

注意事项

在使用switch case语句时,需要注意以下几点:

  1. switch后面的表达式只能是整型或字符型,不能是浮点型、数组等其他类型。
  2. 每个case分支中的值必须是常量,不能是变量或者表达式。
  3. 每个case分支中不能定义变量,只能是执行语句。
  4. 每个case分支末尾要加上break;,否则会出现”case穿透”现象,即匹配到一个case分支后,会继续执行下面所有分支的代码,直到遇到break;为止。
  5. default分支是可选的,如果没有匹配的case,会执行default中的代码。

总结

switch case语句是C语言中一种方便、简洁的多分支选择结构,适合用于根据不同的条件执行不同的代码。在实际编程中,根据情况选用switch case或者if else结构可以使代码更加清晰易读。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程