原标题:C语言之分支结构(三)
大家好!今天我们来学习另外一种分支结构switch结构。
每一个if语句都只能在两种分支情况进行选择,如果对于某一个条件,存在多种分支的情况用if语句或者多重嵌套的if语句结构来实现,当嵌套的分支较多时,程序会变得复杂冗长,可读性降低。为了解决这个问题,C语言提供了 switch开关语句专门处理多路分支的情形,使程序变得简洁。
switch语句
switch语句是一种多路分支开关语句,语句的一般形式为:
switch()
{
case:语句序列1;
case:语句序列2;
……..
case:语句序列n;
default:语句序列(n+1);
}
其中常量表达式的值必须是整型、字符型或者枚举类型,各语句序列允许有多条语句,不需要将语句序列用一对花括号括起来,可以为任意表达式。
switch语句一般形式的语法规则是:先计算的值,再从上到下判断与哪个的值相等,如果的值等于的值,则从语句序列i开始执行,直到语句序列(n+1)为止;若的值不等于任何一个的值,则执行 default后面的语句序列(n+1)
显然,可以利用switch语句的程序,也可以用if语句的结构来实现,但如果嵌套的层次较多,会降低程序的可读性,所以,一般不采用结构来表达。
下面我们来看一个程序ÿ