选择结构程序设计
3.2.1 关系运算符及其优先次序
<,<=,>,>=
的优先级相同,高于==
和!=
,==
和!=
的优先级相同
优先级高的先运算,再算优先级低的,优先级相同,从左到右
3.2.2 关系表达式
用关系运算符连接的式子叫关系表达式,他的结果是表示逻辑的,c语言用0表示假,1表示真
逻辑运算符略
3.3.4 逻辑运算的优先顺序
非!>算术运算>关系运算>&&和||>赋值运算
例如:!a&&b||x>y&&c
(!a)&&b||(x>y)&&c
先算!a,第二算x>y,剩下的都是逻辑与或了,先算逻辑与再算逻辑或
3.4 用if语句设计选择结构
单分支
1 | if ( <条件表达式> ) |
双分支
1 | if ( <条件表达式> ) |
多分支
1 | if ( <条件表达式> ) |

使用条件表达式时,还应注意以下几点:
注意,三目运算也是一个选择结构
条件?a:b
可以写成
if(条件)a;else b;
3.6 switch的多分支结构
参考 C语言的基本控制结构
switch语句,又称为开关语句。它允许程序根据表达式的计算结果在多个分支中进行选择。switch语句的语法格式如下:

在使用switch语句的时候,需要注意下面几点限制。
(1)case语句中的常量必须是整型常量、字符常量或枚举常量。在实际应用中,经常将常量用#define进行宏定义,以便提高程序的可读性。
(2)在switch语句中,所有的case常量不允许重复,default分支可以省略,并且case后面的语句序列是一组语句,而不是一条语句。
(3)在实际应用中,经常将break语句作为每个case分支的语句序列的最后一条语句,以表示该分支的计算结束,并随后跳出switch语句,终止switch语句的继续执行。
(4)如果在case分支的语句序列的最后没有放置break语句,则程序执行完这个case分支的语句序列后,将继续执行下一个case分支的语句序列。利用这个特征,在case分支之后也可以不给出语句序列。当开关值等于这个case分支的常量时,程序将直接执行下一个case分支中的语句序列,从而实现多个开关值对应一个分支的应用需求。