天天看點

C語言 第四章 關系、邏輯運算與分支流程控制一、關系運算二、邏輯運算三、運算優先級四、if語句五、switch語句

若幹表達式用關系運算符連接配接而成,就構成關系表達式。

關系表達式中,表達式成立,其值為1(真);表達式不成立,其值為0(假)。

其他表達式中,其結果如果是非0則為真,結果為0則為假。

關系運算符的優先級低于算術運算符,高于指派運算符。

關系運算符号:> >= < <= !=

運算結果:

C語言 第四章 關系、邏輯運算與分支流程控制一、關系運算二、邏輯運算三、運算優先級四、if語句五、switch語句
C語言 第四章 關系、邏輯運算與分支流程控制一、關系運算二、邏輯運算三、運算優先級四、if語句五、switch語句

!(邏輯非)

運算規則:!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碼為非零的整數,非零值與非零值作“與”運算,結果為真。

C語言 第四章 關系、邏輯運算與分支流程控制一、關系運算二、邏輯運算三、運算優先級四、if語句五、switch語句
C語言 第四章 關系、邏輯運算與分支流程控制一、關系運算二、邏輯運算三、運算優先級四、if語句五、switch語句

代碼塊表示一段代碼,有{}符号界定,是一個新的作用域,可以有0-n行代碼。

C語言 第四章 關系、邏輯運算與分支流程控制一、關系運算二、邏輯運算三、運算優先級四、if語句五、switch語句
C語言 第四章 關系、邏輯運算與分支流程控制一、關系運算二、邏輯運算三、運算優先級四、if語句五、switch語句

if(條件表達式)

{

條件表達式為真時要執行的語句塊(分支一語句);

}

其語義是:

如果表達式的值為真,則執行其後的分支一語句, 否則不執行該分支一語句。

C語言 第四章 關系、邏輯運算與分支流程控制一、關系運算二、邏輯運算三、運算優先級四、if語句五、switch語句

else

條件表達式為假時要執行的語句塊(分支二語句);

其語義是:如果表達式的值為真,則執行分支一語句,否則執行分支二語句。

C語言 第四章 關系、邏輯運算與分支流程控制一、關系運算二、邏輯運算三、運算優先級四、if語句五、switch語句
C語言 第四章 關系、邏輯運算與分支流程控制一、關系運算二、邏輯運算三、運算優先級四、if語句五、switch語句

使用多重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

答案:

繼續閱讀