若幹表達式用關系運算符連接配接而成,就構成關系表達式。
關系表達式中,表達式成立,其值為1(真);表達式不成立,其值為0(假)。
其他表達式中,其結果如果是非0則為真,結果為0則為假。
關系運算符的優先級低于算術運算符,高于指派運算符。
關系運算符号:> >= < <= !=
運算結果:

!(邏輯非)
運算規則:!1 = 0,!0 = 1 。優先級:高。
&&(邏輯與)
運算規則:1&&1=1,1&&0=0,0&&1=0,0&&0=0優先級:中
||(邏輯或)
運算規則:0||1=1,1||0=1,0||0=0,1||1=1。
優先級:低
注意:短路,當與運算時,第一個表達式為假時,不會再處理第2個表達式。
a&&b
當或運算時,第1個表達式為真是,不會再處理第2個表達式
a||b
注意:
另外使用時必須注意以下幾點:
代數中的不等式0<x<5必須寫成(x>0)&&(x<5)
C語言允許直接對數字或字元進行邏輯運算。
例如:!5,其結果為0。因為在C語言中,非0的值均認為是“真”,而5是個非零值,對非零值求反,即得零值。5&&‘c’,結果為1。因為字元'c'的ASCLL碼為非零的整數,非零值與非零值作“與”運算,結果為真。
代碼塊表示一段代碼,有{}符号界定,是一個新的作用域,可以有0-n行代碼。
if(條件表達式)
{
條件表達式為真時要執行的語句塊(分支一語句);
}
其語義是:
如果表達式的值為真,則執行其後的分支一語句, 否則不執行該分支一語句。
else
條件表達式為假時要執行的語句塊(分支二語句);
其語義是:如果表達式的值為真,則執行分支一語句,否則執行分支二語句。
使用多重if完成下面的内容:
輸入分數,根據分數輸出等級.
0-59 不及格
59-70 良好
71-85 優秀
86-100 卓越
練習:
使用switch完成菜單功能,使用者按鍵(1-5)選擇。
1、開始遊戲
2、建立存檔
3、加載存檔
4、加載地圖
5、退出
請選擇(1-5):
當輸入1-5以外的内容時輸出錯誤
switch練習2:
輸入年份與月份,輸出天數。
年:2008
月:2
29
年:2009
月:3
31
答案: