C语言有两种选择语句:1.if语句 (用来实现两个分支的选择结构) 2.switch语句(用来实现多分支的选择结构)
js也不外乎这两种
if语句的一般形式:
if(表达式)语句一
[else 语句二] (else子句 可有可无)
if语句中的"表达式"可以是关系表达式、逻辑表达式、甚至是数值表达式
其中最直观、最容易理解的是关系表达式
根据if语句的一般形式,if语句可以写成不同的形式,最常用的有以下三种形式
1.if(表达式) 语句一 (没有else子句部分)
2.if(表达式) (有else子句部分)
语句一
else
语句二
3.if(表达式1) 语句一 (在 else 部分又嵌套了多层的if语句)
else if(表达式2) 语句二
else if(表达式3) 语句三
. .
. .
. .
else if (表达式n) 语句 n
else 语句 n + 1
if else 匹配原则
if else匹配规则是else匹配距离最近未被匹配的if (可以加花括号来确定配对关系)
选择结构的嵌套:
if ()
if() 语句一 (内嵌 if)
else 语句二
else
if() 语句三 (内嵌 if)
else 语句四
if 语句 只有两个分支可供选择,而实际问题中常常需要用到多分支的选择
switch 语句
switch 语句是多分支选择语句,一般形式如下:
switch() {
case 常量1 : 语句一
case 常量2 : 语句二
. . .
case 常量n : 语句n
default : 语句n + 1
}
注意:switch 后面括号内的"表达式",其值的类型应为整数类型(包括字符型)
可以没有default
在switch 语句中,"case常量表达式" 实际相当于一个语句标号, switch 后表达式的值若和某标号相等则转向该标号执行,
之后便继续执行其后所有的case 语句,即不能在执行完该标号的语句后,自动跳出整个switch语句,
为了避免上述情况,需要使用 break 语句
switch() {
case 常量1 : 语句一; break;
case 常量2 : 语句二; break;
. . .
case 常量n : 语句n; break;
default : 语句n + 1; break;
}