对于有三种或更多的结构,C语言除了用多分支选择结构else if之外,C语言还提供了switch的结构。


switch语句的执行过程为:首先计算表达式的值,然后依次与常量表达式依次进行比较,若表达式的值与某常量表达式相等,则从该常量表达式处开始执行,直到switch语句结束。若所有的常量表达式的值均不等于表达式的值,则从default处开始执行。一般形式如下:

switch(表达式) /*首先计算表达式的值*/ 
{ 
    case 常量表达式1:语句1; 
    case 常量表达式2:语句2; 
    case 常量表达式3:语句3; 
    // …… 
    case 常量表达式n:语句n; 
    default:语句n+1;
}


例子:

switch(value)
{
    case 1:printf("one");
    case 2:printf("two");
    case 3:printf("three");
    default:printf("other");
}


需要注意的是,switch中每个条件(case)是比较相等与否,而else if中的条件除了可以比较相等以外,还可以满足某个区间,这是两者的使用范畴不一样,请大家多多上机,尝试修改代码,多多体会!


点赞(1)

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

Dotcpp在线编译      (登录可减少运行等待时间)