



版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、 選擇結(jié)構(gòu)程序設(shè)計(一)說明內(nèi)容1關(guān)系運算符和關(guān)系表達式2邏輯運算符和邏輯表達式3條件運算符及條件表達式4IF語句5IF語句的嵌套生活中的“十字路口”也屬于選擇結(jié)構(gòu)類型。舉例說明實例講解說明舉例說明通過講解,向if語句過渡通過與前面引入的例子重點說明其格式結(jié)合實例說明其注意事項通過圖例說明嵌套的匹配關(guān)系。對比實例,詳細細化注意事項通過實例,說明分支程序設(shè)計的思想,鞏固前面所講的內(nèi)容。重點1關(guān)系運算符和關(guān)系表達式2邏輯運算符和邏輯表達式3條件運算符及條件表達式4IF語句的格式使用5IF語句的嵌套難點復(fù)雜條件的表示;IF語句的正確使用。問題提出通過前面的順序結(jié)構(gòu)程序設(shè)計的介紹,我們都知道順序結(jié)構(gòu)程
2、序設(shè)計按照自上而下的流程的順序執(zhí)行,但是在實際生活中,僅順序結(jié)構(gòu)是無法滿足用戶要求的,并不是所有的程序都是自上而下的順序執(zhí)行,而是根據(jù)條件有選擇的執(zhí)行。這就是我們將要學(xué)習(xí)的分支結(jié)構(gòu)程序設(shè)計。詳細內(nèi)容一、導(dǎo)入討論導(dǎo)入:請教學(xué)生翻譯下面的英語句子a.If she is not in Class1 then she will be in Class2.b.If it does not rain then Ill go to park, else Ill go to the movie. 創(chuàng)造情景,使學(xué)生感覺新鮮和自信,學(xué)生可以翻譯的準(zhǔn)確無誤。此過程中,教師引導(dǎo)學(xué)生注意if 、then、 else三個
3、詞的使用。學(xué)生歸納:條件語句的一般形式:格式1:if 條件 then 語句組格式2:if 條件 then 語句組1 else 語句組2二、if中的條件表示1關(guān)系運算符和關(guān)系表達式在程序中經(jīng)常需要比較兩個量的大小關(guān)系, 以決定程序下一步的工作。比較兩個量的運算符稱為關(guān)系運算符。(1)關(guān)系運算符:操作符 作用 大于 = 大于等于 小于 = 小于等于 = = 等于 != 不等于 關(guān)系運算符都是雙目運算符,用于兩個運算對象比較。注意:不能將“=”寫成“=”寫成“=”。(2)關(guān)系表達式:用關(guān)系運算符將兩個運算對象連接起來的式子稱為關(guān)系表達式。運算對象可以是常量,可以是變量,也可是表達式。如:32 b*b
4、-4*a*c=1e-6 x= =y a%b!=0關(guān)系表達式的值: C語言規(guī)定用數(shù)值0代表關(guān)系運算結(jié)果為“假”,用數(shù)值1代表關(guān)系運算結(jié)果為“真”。關(guān)系表達式值的數(shù)據(jù)類型為整型。設(shè)有定義 int a=3,b=2,c=1; 則:ab 的值為1c= =a 的值為0(3)優(yōu)先級和結(jié)合方向、=、和 = c+d 等價于 (a+b)(c+d)關(guān)系運算符的結(jié)合方向都為左結(jié)合。如:abc 等價于 (ab)c2、邏輯運算符和邏輯表達式(1)邏輯運算符& 邏輯與| 邏輯或! 邏輯非(2)邏輯表達式用邏輯運算符將關(guān)系表達式或邏輯量連接起來的式子就是邏輯表達式。運算對象一般為關(guān)系表達式或邏輯量(常量或變量)。如;x10|
5、x2&43 的結(jié)果為真35 結(jié)果為真!(32) 的結(jié)果為假邏輯表達式的值:用數(shù)值0代表邏輯運算結(jié)果為“假”,用數(shù)值1代表邏輯運算結(jié)果為“真”。在判斷一個量(常量或變量)是“真”還是“假”時,C語言規(guī)定以0代表“假”,以非0代表“真”。35 的結(jié)果為035 結(jié)果為1!(32) 的結(jié)果為0(3)優(yōu)先級和結(jié)合方向三個邏輯運算符優(yōu)先級從高到低的順序為:! & |! 的優(yōu)先級高于算術(shù)運算符。&和|的優(yōu)先級低于關(guān)系運算符。如:32+1&4(2+1)&(4b&cd&ef 等價于 (ab)&(cd)&(ef)!(ab) 等價于 !(!(!(ab)3、條件運算符及條件表達式(1)條件運算符 ? : C語言中唯一
6、的一個三目運算符。(2)條件表達式條件表達式的一般形式為: 表達式1?表達式2:表達式3 其中,表達式i (1i3)的類型任意,表達式1一般為關(guān)系表達式或邏輯表達式,表達式2和表達式3一般為同類型表達式。條件表達式的求解過程是:先求解表達式1,若表達式1的值不為0,則求解表達 式2,表達式2的值就是條件表達式的值;若表達式1的值為0,則求解表達式3,表達式3的值就是條件表達式的值。 如: 32?3+2:3*2 表達式的值為5ab?3!=0:7= =8 表達式的值為0(3)優(yōu)先級和結(jié)合方向 條件運算符的優(yōu)先級高于賦值運算符,但低于邏輯運算符、關(guān)系運算符和算術(shù)運算符。如:32?3+2:3*2 等價
7、于 (32)?(3+2):(3*2)ab?3!=0:7= =8 等價于 (ab)?(3!=0):(7= =8)條件運算符的結(jié)合方向為右結(jié)合。如:注意:條件表達式中的表達式2和表達式3只有一個被求解。表達式1的類型可與表達式2和表達式3的類型不同。三、分支結(jié)構(gòu)表示IF語句在C中條件語句的一般形式為: if(表達式) 語句1; else 語句2; 執(zhí)行過程如下:如果表達式的值為非0(TURE)即真, 則執(zhí)行語句1, 執(zhí)行完語句1從語句2后開始繼續(xù)向下執(zhí)行; 如果表達式的值為0(FALSE)即假, 則跳過語句1而執(zhí)行語句2。然后程序繼續(xù)往下執(zhí)行。所謂表達式是指關(guān)系表達式和邏輯表達式的結(jié)合式, 關(guān)于表
8、達式前面已作過介紹, 這是不再重復(fù)。表達式真(非0)假(0)語 句 1語 句 2注意:1. 如果語句1或語句2有多于一條語句要執(zhí)行時, 必須使用和 把這些語句包括在其中, 此時條件語句形式為:if(表達式) 語句體1; else 語句體2;2. 分支程序的三種形式(1)單分支: 例1輸入一個整型數(shù),輸出該數(shù)的絕對值。 main() int a,; scanf(%d,&a); if(ab*b) max=a; else max=b; printf(%5dn,max); (3)多分支if語句是雙分支if語句的一個擴充,其格式為:例3輸入一個百分制成績,輸出其對應(yīng)的等級。(90100為A,8099為B
9、,7079為C,6069為D,059為E)main() int x; char y; scanf(%d,&x); if(x=90) y=A; else if(x=80) y=B; else if(x=70) y=C; else if(x=60) y=D; else y=E; printf(y=%cn,y);四If嵌套格式if語句可以嵌套,即在一個if語句中又可以包含一個或多個if語句,一般形式為:if(表達式1)if(表達式2) 語句1else 語句2elseif(表達式3) 語句3else 語句4注意:在缺省花括號的情況下,if和else的配對關(guān)系是:從最內(nèi)層開始,else總是與它上面最近的
10、并且沒有和其他else配對的if配對。程序員應(yīng)該養(yǎng)成良好的編程習(xí)慣,從書寫格式上,注意if和else的層次關(guān)系,反映if與else的配對關(guān)系。以便提高程序的維護和理解。如下if與else的配對舉例。例4已知函數(shù)y=編寫程序,輸入x,輸出y值。main() float x; int y; scanf(%f,&x); if(x=0) if(x0) y=1; else y=0; else y=-1; printf(x=%f y=%dn,x,y);使用if 語句時應(yīng)注意以下幾點: if后面圓括號內(nèi)的表達式可以為任意類型,但一般為關(guān)系表達式或邏輯表達式。 if和else后面的語句可以是任意語句。 if(
11、x)與if(x!=0)等價。 if(!x)與if(x= =0)等價。五、舉例說明例5:讀入一個整數(shù),判斷其能否被3整除。#include main() int a ;printf(Enter an integer “) ;scan(%d,&a) ; /*輸入一個整數(shù)*/if (a%3= =0) /*判斷能否被3整除并輸出相應(yīng)信息*/printf(%d能被3整除n”,a) ;else printf(%d不能被3整除n”,a) ;例6 從鍵盤輸入三個數(shù),求出絕對值最大者并顯示輸出。分析:可將輸入的三個數(shù)存放于變量a,b,c中,先用a和b 比較(絕對值比較),將大數(shù)存放于臨時變量max中,再用max
12、和c比較,再將大數(shù)存放于max中,這樣進行比較之后得到的max一定為a,b,c中絕對值最大的數(shù)。程序如下:#include #include math.hmain () float a ,b ,c ;float max ;printf(“Enter 3 numbers n”) ;scanf (%f , %f , %f ,&a,&b,&c);if (abs(a) abs (b) max=abs(a) ; else max=abs(b) ;if (max abs (c)max=abs(c) ; printf(Max=%fn,max) ;例7 輸入三個整數(shù),按大小順序輸出程序如下:#include main() int a,b,c,temp ; scanf(“%d,%d,%d”,&a,&b,&c) ;if (ab) temp=a; a=b ; b=temp ; if (ac)
溫馨提示
- 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)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 公司貨款擔(dān)保合同范本
- cso公司合同范本
- 專題一第2課五、《軟件系統(tǒng)》教學(xué)設(shè)計 2023-2024學(xué)年青島版(2018)初中信息技術(shù)七年級上冊
- 15《我與地壇》教學(xué)設(shè)計 2024-2025學(xué)年統(tǒng)編版高中語文必修上冊
- 修房子木材出售合同范本
- 凍庫工程銷售合同范本
- 公裝合同范本
- 個人郊區(qū)房屋買賣合同范本
- 個人餐廳轉(zhuǎn)讓合同范本
- 2024年新鄉(xiāng)市長垣市公益性崗位招聘筆試真題
- 《經(jīng)營模式淺談》課件
- 創(chuàng)傷失血性休克中國急診專家共識
- 環(huán)保設(shè)備設(shè)施風(fēng)險分析評價記錄及風(fēng)險分級管控清單
- 疏散路線智能規(guī)劃系統(tǒng)
- 《快遞實務(wù)》課件 項目1 走進快遞
- 統(tǒng)編版語文四年級下冊第六單元教材解讀解讀與集體備課課件
- 新教科版六年級下冊科學(xué)全冊教案
- 雞肉食品行業(yè)報告
- 顆粒增強鋁基復(fù)合材料
- 火車站消防指導(dǎo)培訓(xùn)課件
- 婦產(chǎn)科全套課件
評論
0/150
提交評論