1、C語言有兩種選擇語句
(1)if語句,用來實現兩個分支的選擇結構
(2)switch語句,用來實現多分支的選擇結構
2、根據if語句的一般形式,if語句可以寫成不同的形式,最常用的有以下三種形式
(1)if(表達式)語句1 (沒有else子句部分)
(2)if(表達式)
語句1
else
語句2
(3)if(表達式1)語句1 (在else部分又嵌套了多層的if語句)
else if(表達式2)語句2
.
.
.
else if(表達式m)語句m
else 語句m+1
3、說明:
(1)整個if語句,可以寫在多行上,也可以寫在一行上,如
if(x>0)y=1;else y=-1;
(2)每個內嵌語句的末尾都應當有分號,因為分號是語句中的必要成分。
(3)if語句無論寫在幾行上,都是一個整體,屬于同一個語句。注意else子句不能作為語句單獨使用,它必須是if語句的一部分,與if配對使用。
4、在C語言中,比較符(或稱比較運算符)稱為關系運算符。所謂關系運算符就是比較運算。
C語言提供了6種關運算符
優先級相同(高)
1)<
2)<=
3)>
4)>=
優先級相同(低)
5)==
6)!=
(1)前四種關系運算符的優先級別相同,后兩種也相同,前四種高于后兩種。
(2)關系運算符的優先級低于算術運算符
(3)關系運算符的優先級高于賦值運算符
5、關系表達式
用關系運算符將兩個數值或數值表達式連接起來的式子,稱關系表達式
關系表達式是一個邏輯值,即 真或假
6、用邏輯運算符(AND、OR、NOT)將關系表達式或其它邏輯量連接起來的式子就是邏輯表達式
C語言中邏輯運算符用其它字符代替
&&:邏輯與
||:邏輯或
!:邏輯非
優先次序:
(1)!(非)->&&(與)->||(或)依次降低
(2)邏輯運算符中的&&和||低于關系運算符,!高于算術運算符
7、C語言編譯系統在表示邏輯運算結果時,以數值1表示真,以數值0表示假,但是在判斷一個量時候,以0代表假,以非0表示真
8、在邏輯表達式的求解中,并不是所有的邏輯運算符都被執行,只有在必須執行下一個邏輯運算符才能求出表達式的解時,才執行該運算符。
9、條件運算符和條件表達式
表達式1?表達式2:表達式3
(1)順序執行
(2)條件運算符優于賦值運算符。條件運算符的優先級別比關系運算符和算術運算符都低。
10、選擇結構的嵌套
在if語句中又包含一個或多個if語句稱為if語句的嵌套
11、用switch語句實現多分支選擇結構
switch(表達式)
{
case 常量1:語句1
case 常量2:語句2
'
’
’
case 常量3:語句n
default:語句n+1
}
說明
(1)后面其值的類型必應該為整數類型(包括字符型)
(2)花括號內是一個復合語句
(3)可以沒有default
(4)各個case標號出現次序不影響執行結果
(5)每個case常量必須互不影響
(6)case只起標記的作用,最好和break搭配使用
(7)多個case標號可以共用一套執行語句