C語言程序設(shè)計 第3章 選擇結(jié)構(gòu)程序設(shè)計.ppt_第1頁
C語言程序設(shè)計 第3章 選擇結(jié)構(gòu)程序設(shè)計.ppt_第2頁
C語言程序設(shè)計 第3章 選擇結(jié)構(gòu)程序設(shè)計.ppt_第3頁
C語言程序設(shè)計 第3章 選擇結(jié)構(gòu)程序設(shè)計.ppt_第4頁
C語言程序設(shè)計 第3章 選擇結(jié)構(gòu)程序設(shè)計.ppt_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、第3章,選擇結(jié)構(gòu)程序設(shè)計,關(guān)系運算、邏輯運算、if語句、 條件運算符、switch語句,本章要點,首先要了解關(guān)系運算及邏輯運算的相關(guān)知 識,理解什么是選擇結(jié)構(gòu),然后再學(xué)習(xí)實現(xiàn)選 擇結(jié)構(gòu)的各語句,各語句的語法結(jié)構(gòu),實現(xiàn)過 程均需要記憶,只有這樣才能學(xué)會選擇結(jié)構(gòu)程 序的編寫方法。,學(xué)習(xí)方法建議,本章內(nèi)容,3.5 程序舉例,3.1 關(guān)系運算符和關(guān)系表達式,3.2 邏輯運算符和邏輯表達式,3.3 if語句,3.4 switch語句,3.1 關(guān)系運算符及其表達式,1. 關(guān)系運算符,關(guān)系運算實質(zhì)就是兩個算術(shù)量比較大小,其結(jié)果是一個邏輯值。邏輯值只有兩個,分別用“真”和“假”來表示。在C語言中,沒有專門的“

2、邏輯值”,而是用非0表示“真”,用0表示“假”。因此,對于任意一個表達式,如果值為非零,就代表一個“真”值;如果值為0,就代表一個“假”值。,上一頁,下一頁,返 回,關(guān)系運算符共有以下6種: 大于 = 大于等于 、=)的優(yōu)先級別相同,后兩種(= =、!=)優(yōu)先級相同,且前四種高于后兩種。關(guān)系運算符的優(yōu)先級低于算術(shù)運算符。,2. 關(guān)系表達式,小測驗: 假設(shè)變量a=3、b=2、c=1,執(zhí)行賦值語句f=abc;后,變量f的值是多少?,關(guān)系表達式的形式為:,表達式1 關(guān)系運算符 表達式2,例如:ab、a+bc、x!=y等都是合法的關(guān)系表達式。,關(guān)系表達式的值有兩種情況: (1) 當關(guān)系成立時,表達式的

3、值為邏輯真,程序中用1表示。 (2) 當關(guān)系不成立時,表達式的值為邏輯假,用0來表示。,例如,有關(guān)系表達式bc,當b的值是5,c的值是8時,bc關(guān)系成立,那么表達式的值為1;而當b的值為9,c的值是6時,bc關(guān)系不成立,那么表達式的值為0。,上一頁,下一頁,返 回,3.2 邏輯運算符及其表達式,1. 邏輯運算符,上一頁,下一頁,三種邏輯運算符: printf(Input a ,【例3.1】,上一頁,下一頁,返 回,上一頁,下一頁,2雙選擇型if語句,語法格式為: if(表達式)語句1 else 語句2,輸入任意三 個整數(shù)給變量a、b、c, 求三個數(shù)中的最大值。,【程序代碼】 #include

4、stdio.h main( ) int a,b,c,max; printf(Please input three number:); scanf(%d%d%d,【例3.2】,返 回,3多選擇型if語句,上一頁,下一頁,語法格式為: if(表達式1)語句1 else if(表達式2)語句2 else if(表達式3)語句3 else if(表達式n)語句n else語句n+1,對學(xué)生的考試成績進 行等級評價,90分以上為優(yōu)秀 ,8090分為良好,7080分為 中,6070分為及格,60分以下 為不及格。任意輸入一個學(xué)生的 成績,判斷屬于哪個等級。,【程序代碼】 #include stdio.h

5、main( ) int cj; printf(Please input cj:); scanf(%d, ,執(zhí)行程序,輸入85,運行結(jié)果如下:,【例3.3】,返 回,上一頁,下一頁,3.3.2 條件運算符,語法格式為: 表達式1?表達式2:表達式3,執(zhí)行過程:計算“表達式1”的值,如果該值為非值,則計算“表達式2”的值,并將該值作為條件表達式的值。若“表達式1”的值為,則計算“表達式3”的值,并將該值作為條件表達式的值。,說明: (1)條件運算符優(yōu)先級別高于賦值運算符,低于關(guān)系運算符和算術(shù)運算符。 (2)條件運算符結(jié)合方向是“自右至左”。 (3)“表達式1”與“表達式2”、“表達式3”的類型可以

6、不同。,求兩個數(shù)中的最小值。,【程序代碼】 # include stdio.h main( ) int x,y,min; printf( Enter two integers :); scanf(%d, %d, ,【例3.4】,返 回,上一頁,下一頁,3.3.3 if語句的嵌套,在if語句中又包含一個或多個if語句,稱為if 語句的嵌套。內(nèi)嵌的if語句 既可以嵌套在if子句中,也可以嵌套在else子句中。,(1)在if子句中嵌套if語句,語法格式為: if(表達式1) if(表達式2) 語句1 else 語句2 else 語句3,說明:如果內(nèi)嵌的if語句不含else子句,則內(nèi)嵌的if語句要用一

7、對括號括起來。因為C語言的語法規(guī)定:else子句總是與前面最近的不帶else的if相結(jié)合,與書寫格式無關(guān)。,返 回,有一函數(shù): -1 (x0) 編一程序,輸入一個x值,輸出y值。,上一頁,下一頁,【程序代碼】 # include stdio.h main( ) int x,y; printf(Input x:); scanf(%d, ,(2)在else子句中嵌套if語句,語法格式為: if(表達式1) 語句1 else if(表達式2) 語句2 else 語句3,【例3.5 】中例題中的if 語句用該嵌套格式可以寫成如下形式: if(x0) y=1; else if(x0) y=-1; els

8、e y=0;,【例3.5】,返 回,語法格式為: switch(表達式) case 常量表達式1: 語句1 case 常量表達式2: 語句2 case 常量表達式n: 語句n default: 語句n +1 ,上一頁,下一頁,3.4 switch語句,switch語句又稱為多分支選擇語句或開關(guān)語句。,說明: (1)case后面的常量表達式的值,都必須是整型的、字符型的,不允許是浮點型的。 (2)同一個 switch語句中的所有case后面的常量表達式的值都必須互不相同。 (3)default的出現(xiàn)次序是任意的 (4)每個case的后面有多條語句的時候,也不需要用花括號括起來。 (5)多個cas

9、e的后面可以共用一組執(zhí)行語句,,返 回,【程序代碼】 #include stdio.h main( ) int score; printf(Please input score:); scanf(%d, ,上一頁,下一頁,用switch語句處理例3.3中的問題,在switch語句中使用break語句。用來中止switch語句中從入口處繼續(xù)往下執(zhí)行。,用switch語句和break語句處理例3.6中的問題,include stdio.h main( ) int score; printf(Please input score:); scanf(%d, ,【例3.6】,【例3.7】,返 回,3.5 選擇結(jié)構(gòu)應(yīng)用舉例,【程序代碼】 #include stdio.h main( ) int x; printf(Input x:); scanf(%d, ,上一頁,下一頁,輸入一個數(shù),判斷它是奇 數(shù)還是偶數(shù),如果是奇數(shù)則進一步 判斷它是否為5的倍數(shù)。,從鍵盤上輸入m或M, 顯示“GOOD Morning!”;輸入 h或H,顯示“Hello!”;輸入n或N ,顯示“GOOD Night!”,輸入其 它字母時不顯示任何信息。,【程序代碼】 # include stdio.h main( ) char ch; scanf(%c,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論