16 选择嵌套和switch语句_嵌套





01 选择结构的嵌套



前面讲解if语句的那篇文章中有详细的if嵌套,这里只是说一下
一般形式:
if()
if() 语句1
else 语句2 内嵌if
else
if() 语句3
else 语句4 内嵌if

应该注意if与else的配对关系。else总是与它上面的最近的未配对的if配对。




02 switch多分支语句



如果分支较多,嵌套的if语句层数多,程序繁长而且可读性降低,因为C语言提供switch语句直接处理多分支选择。

一般形式



switch(表达式)
{
case 常量1:语句1
case 常量2:语句2
……
case 常量n:语句n
default:语句n+1
}

switch后面括号内的“表达式”,其值的类型应为整数类型(包括字符型)。

switch下面的花括号内是一个复合语句。

可以没有default标号,此时如果没有与switch表达式相匹配的case常量,则不执行任何语句,流程转到switch语句的下一个语句。

各个case标号出现的次序不影响执行结果,case标号只起标记作用。

每一个case常量必须互不相同。

在case子句中虽然包含了一个以上执行语句,但可以不必用花括号括起来,会自动顺序执行本case标号后面所有的语句。