易百教程

使用switch进行多项选择

switch-case结构基于单个值在C语言程序中做出决定。

示例代码

#include <stdio.h> 

int main()
{ 
     int code; 

     printf("输入错误代码值(1-3): "); 
     scanf("%d",&code); 

     switch(code) 
     { 
         case 1: 
             puts("驱动故障,而不是你的错."); 
             break; 
         case 2: 
             puts("非法格式,不知道什么情况."); 
             break; 
         case 3: 
             puts("糟糕的文件名,打不开了."); 
             break; 
         default: 
             puts("哥,只能输入 1, 2, 3"); 
     } 
     return(0); 
}

执行上面示例代码,得到以下结果:

hema@ubuntu:~/book$ gcc main.c
hema@ubuntu:~/book$ ./a.out
输入错误代码值(1-3): 3
糟糕的文件名,打不开了.

switch-case结构以switch语句开头。它评估的项目括在括号中。

结构的case部分用大括号括起来。case语句显示单个值,该值后跟冒号。将每个case语句指定的值与switch语句中指定的项进行比较。
如果值相等,则执行属于此case的语句。
如果值不相等,则跳过它们并比较下一个case值。
break关键字通过switch-case结构停止程序流。

在最终比较之后,switch-case结构使用default项。当没有任何case项比较匹配时,执行该default的语句。
switch-case结构中需要default项。