C语言基础(一) 互动版

switch语句


C语言还提供了另一种用于多分支选择的switch语句,其一般形式为:

switch(表达式){ 

    case 常量表达式1:  语句1;

    case 常量表达式2:  语句2;

    … 

    case 常量表达式n:  语句n;

    default:  语句n+1;

}

其语义是:计算表达式的值。 并逐个与其后的常量表达式值相比较,当表达式的值与某个常量表达式的值相等时, 即执行其后的语句,然后不再进行判断,继续执行后面所有case后的语句。如表达式的值与所有case后的常量表达式均不相同时,则执行default后的语句。例

#include "stdio.h"
int main()
{
    int a;
    printf("input integer number:    ");
    a=1;
    switch (a)
    {
        case 1:printf("Monday\n");  break;
        case 2:printf("Tuesday\n");   break;
        case 3:printf("Wednesday\n");  break;
        default:printf("error\n");
    }
    return 0;
}

在使用switch语句时还应注意以下几点:

  1. 在case后的各常量表达式的值不能相同,否则会出现错误。
  2. 在case后,允许有多个语句,可以不用{}括起来。
  3. 各case和default子句的先后顺序可以变动,而不会影响程序执行结果。
  4. default子句可以省略不用。