第四章 选择结构程序设计
关系运算符
- 结合性均为左结合
<
、<=
、>
、>=
的优先级相同,高于==
和!=
,==
和!=
的优先级相同优先级: 赋值运算符 < 关系运算符 < 算术运算符
特别注意:
==
与=
。 尤其在if
条件判断中。
逻辑运算符
&&
和||
均为 双目运算符 , 具有左结合性!
为 单目运算符 , 具有右结合性- 优先级:
!
> 算术运算符 > 关系运算符 >&&
>||
> 赋值运算符 - 先决与 、 先决或
if
语句的嵌套
else
总是与它前面最近的未配对的if
配对
条件运算符
- 优先级:
!
> 算术运算符 > 关系运算符 >&&
>||
> 条件运算符 > 赋值运算符 a>b?a:b+1
应理解为a>b?a:(b+1)
, 而不是(a>b?a:b)+1
- 结合方向: 自右至左
例如:a>b?a:c>d?c:d
应理解为a>b?a:(c>d?c:d)
switch
语句
格式:
switch(表达式)
{
case 常量表达式1: 语句1;
case 常量表达式2: 语句2;
…
case 常量表达式n: 语句n;
default : 语句n+1;
}
当表达式的值与某个常量表达式的值相等时,执行其后的语句,然后不再进行判断,继续执行下面所有
case
后的语句。如果表达式的值与所有case 后常量表达式的值均不相等,则执行
default
后的语句。
switch
后面的表达式两边的括号不能省略case
后面的常量表达式中不能出现变量,且类型必须是整型、字符型或枚举型,各个常量表达式的值不能重复,且与case
间要有空格隔开。default
为可选项,其与case
语句的出现顺序没有严格限制,可出现在任何位置,不会影响执行结果。case
后面的语句可以是一条或多条语句,也可以为空。为多条语句时,可以不用{} 将它们括起来;为空时,程序执行到此会自动向下顺序执行,实现多个case 共用一组执行语句。- 使用
break
语句跳出switch
语句