第4章選擇結(jié)構(gòu)

上傳人:仙*** 文檔編號(hào):34111244 上傳時(shí)間:2021-10-20 格式:PPT 頁(yè)數(shù):45 大?。?49.52KB
收藏 版權(quán)申訴 舉報(bào) 下載
第4章選擇結(jié)構(gòu)_第1頁(yè)
第1頁(yè) / 共45頁(yè)
第4章選擇結(jié)構(gòu)_第2頁(yè)
第2頁(yè) / 共45頁(yè)
第4章選擇結(jié)構(gòu)_第3頁(yè)
第3頁(yè) / 共45頁(yè)

下載文檔到電腦,查找使用更方便

10 積分

下載資源

還剩頁(yè)未讀,繼續(xù)閱讀

資源描述:

《第4章選擇結(jié)構(gòu)》由會(huì)員分享,可在線閱讀,更多相關(guān)《第4章選擇結(jié)構(gòu)(45頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、第第4章章 選擇結(jié)構(gòu)選擇結(jié)構(gòu) 圖圖 1.4選擇結(jié)構(gòu)選擇結(jié)構(gòu)真真假假考慮兩個(gè)問(wèn)題:考慮兩個(gè)問(wèn)題:l在在C語(yǔ)言中如何表示判斷條件?語(yǔ)言中如何表示判斷條件? 答案:答案:用任意合法的表達(dá)式,一般用關(guān)系表用任意合法的表達(dá)式,一般用關(guān)系表達(dá)式和邏輯表達(dá)式。達(dá)式和邏輯表達(dá)式。l怎么實(shí)現(xiàn)分支結(jié)構(gòu)?怎么實(shí)現(xiàn)分支結(jié)構(gòu)? 答案答案:用用if語(yǔ)句和語(yǔ)句和switch語(yǔ)句。語(yǔ)句。圖圖 1.4選擇結(jié)構(gòu)選擇結(jié)構(gòu)真真假假AB第第4章章 選擇結(jié)構(gòu)選擇結(jié)構(gòu) 4.1 關(guān)系運(yùn)算關(guān)系運(yùn)算 4.2 邏輯運(yùn)算邏輯運(yùn)算 4.3 if語(yǔ)句語(yǔ)句 4.4 switch語(yǔ)句語(yǔ)句 本章小結(jié)本章小結(jié) 鞏固練習(xí)鞏固練習(xí) 圖圖 1.4選擇結(jié)構(gòu)選擇結(jié)構(gòu)真真

2、假假ABn例如,例如,x04.1 關(guān)系運(yùn)算關(guān)系運(yùn)算 圖圖 1.4選擇結(jié)構(gòu)選擇結(jié)構(gòu)X0真真假假AB運(yùn)算符運(yùn)算符名稱名稱示例示例優(yōu)先級(jí)優(yōu)先級(jí)結(jié)合性結(jié)合性 小于小于x0 x0相同(高)相同(高)左結(jié)合型左結(jié)合型=小于等于小于等于x=0 x 大于大于x0 x0=大于等于大于等于x=0 x=0= = =等于等于x=0 x=0相同(低)相同(低)!=!=不等于不等于x!=0 x!=0例如:例如:ca+b a=bc關(guān)系運(yùn)算符的優(yōu)先級(jí)關(guān)系運(yùn)算符的優(yōu)先級(jí)低于低于算術(shù)運(yùn)算符,算術(shù)運(yùn)算符,高于高于賦值運(yùn)算符。賦值運(yùn)算符。 c(a+b)a=(bc)值為值為邏輯值邏輯值【例例41】關(guān)系運(yùn)算符示例。關(guān)系運(yùn)算符示例。 /

3、/* * 關(guān)系運(yùn)算符示例關(guān)系運(yùn)算符示例 * */ /#include #include “stdio.hstdio.h”main()main() char c=b; char c=b; int i=1,j=2,k=3; int i=1,j=2,k=3; printf(%d,a+1c); printf(%d,a+1c); printf(%d,1j5); printf(%d,1j5); printf(%dn,k=j=i+5); printf(%dn,k=j=i+5); 應(yīng)避免對(duì)實(shí)數(shù)作相等或不等的判斷。應(yīng)避免對(duì)實(shí)數(shù)作相等或不等的判斷。注意從寫法和含義上區(qū)分賦值運(yùn)算符注意從寫法和含義上區(qū)分賦值運(yùn)算符“

4、= =”與相等關(guān)系運(yùn)算符與相等關(guān)系運(yùn)算符“=”。對(duì)于形如對(duì)于形如“10=x=2010=x=10 & x=10 & x=20 注注 意意 雙目雙目:邏輯與:邏輯與 (&) ; 邏輯或邏輯或 (|) 單目單目:邏輯非:邏輯非 (!)n優(yōu)先級(jí)優(yōu)先級(jí)(由高到低由高到低): !,算術(shù),關(guān)系!,算術(shù),關(guān)系,&,|,賦值賦值n結(jié)合性結(jié)合性:從左到右:從左到右n邏輯運(yùn)算真值表邏輯運(yùn)算真值表4.2.1 邏輯運(yùn)算符邏輯運(yùn)算符a ab ba&ba&ba|ba|b!a a!b!b真真真真真真真真假假假假真真假假假假真真假假真真假假真真假假真真真真假假假假假假假假假假真真真真4.2.2 邏輯運(yùn)算的值邏輯運(yùn)算的值 aba

5、&ba|b!a!b非非0非非01100非非0001010非非001100000114.2.3 邏輯表達(dá)式邏輯表達(dá)式 【例例42】邏輯運(yùn)算示例邏輯運(yùn)算示例/* 邏輯運(yùn)算示例邏輯運(yùn)算示例 */#include “stdio.h”main() char c=b; int i=1,j=2,k=3; printf(%d,!i*!j); printf(%d,ij&ab)&(n=cd)的值和的值和m,n的值分別是什么?的值分別是什么? a|b 的情形類似的情形類似練習(xí)練習(xí):判斷某一年是否閏年。(閏年的條件是符合下:判斷某一年是否閏年。(閏年的條件是符合下面兩個(gè)條件之一):面兩個(gè)條件之一):(1 1)能被)能

6、被4 4整除,但不能被整除,但不能被100100整除;整除;(2 2)能被)能被400400整除。整除。( ) ( )( ) ( )說(shuō)說(shuō) 明:明:4.3.1 if4.3.1 if語(yǔ)句的三種形式語(yǔ)句的三種形式 1 基本基本if語(yǔ)句語(yǔ)句(單分支結(jié)構(gòu))(單分支結(jié)構(gòu))格式格式: if(if(表達(dá)式表達(dá)式) ) 語(yǔ)句語(yǔ)句 0表達(dá)式表達(dá)式語(yǔ)句語(yǔ)句非非0圖圖4.1 基本基本if語(yǔ)句的語(yǔ)義語(yǔ)句的語(yǔ)義if (x0) printf(%fn,sqrt(x); 【例例4.3】輸入兩個(gè)整數(shù),輸出其中的大數(shù)。輸入兩個(gè)整數(shù),輸出其中的大數(shù)。 0maxb輸出輸出maxmax=b非非0圖圖4.2 例例4.3N-S圖圖輸入兩個(gè)整

7、數(shù)給輸入兩個(gè)整數(shù)給a和和bmax=a思考:思考: 如何求如何求3個(gè)整數(shù)中的個(gè)整數(shù)中的最大數(shù)或最小數(shù)?最大數(shù)或最小數(shù)?#include “stdio.h”main() int a,b,max;printf(n input two numbers: );scanf(%d,%d,&a,&b);max=a;if (maxb) printf(max=%dn,a); else printf(max=%dn,b);兩路分支兩路分支【例例4.3】輸入兩個(gè)整數(shù),輸入兩個(gè)整數(shù),輸出其中的大數(shù)。輸出其中的大數(shù)。 3. if-else if-else語(yǔ)句語(yǔ)句格式:格式: if(if(表達(dá)式表達(dá)式1) 1) 語(yǔ)句語(yǔ)句1

8、 1; else if(else if(表達(dá)式表達(dá)式2) 2) 語(yǔ)句語(yǔ)句2 2; else if(else if(表達(dá)式表達(dá)式3) 3) 語(yǔ)句語(yǔ)句3 3; else if( else if(表達(dá)式表達(dá)式n-1) n-1) 語(yǔ)句語(yǔ)句n-1n-1; else else 語(yǔ)句語(yǔ)句n n; 0表達(dá)式表達(dá)式1語(yǔ)句語(yǔ)句1語(yǔ)句語(yǔ)句2非非0圖圖4.4 if-else if-else語(yǔ)句的語(yǔ)義語(yǔ)句的語(yǔ)義表達(dá)式表達(dá)式2非非00表達(dá)式表達(dá)式3非非00語(yǔ)句語(yǔ)句30表達(dá)式表達(dá)式n-1語(yǔ)句語(yǔ)句n-1語(yǔ)句語(yǔ)句n非非0多分支多分支【例例4.6】已知學(xué)生的百分制成績(jī),編寫程序按百分已知學(xué)生的百分制成績(jī),編寫程序按百分制分?jǐn)?shù)進(jìn)行

9、分段評(píng)定,給出相應(yīng)的等級(jí)。制分?jǐn)?shù)進(jìn)行分段評(píng)定,給出相應(yīng)的等級(jí)。 分?jǐn)?shù)大于等于分?jǐn)?shù)大于等于90,則評(píng)定為,則評(píng)定為”A”; 分?jǐn)?shù)在分?jǐn)?shù)在8089之間,則評(píng)定為之間,則評(píng)定為”B”; 分?jǐn)?shù)在分?jǐn)?shù)在7079之間,則評(píng)定為之間,則評(píng)定為”C”; 分?jǐn)?shù)在分?jǐn)?shù)在6069之間,則評(píng)定為之間,則評(píng)定為”D”; 分?jǐn)?shù)小于分?jǐn)?shù)小于60,則評(píng)定為,則評(píng)定為”E”;#include “stdio.h”main( ) float score; char grade;printf(Please input the students score:);scanf(%f,&score);if (score=90) grade=

10、A;else if (score=80) grade=B; else if (score=70) grade=C; else if (score=60) grade=D; else grade=E;printf(%d,%cn,score,grade);例如:例如: if (a=b) printf(%d,a); else printf(a=0); 4.3.2 if4.3.2 if語(yǔ)句的嵌套語(yǔ)句的嵌套 嵌套結(jié)構(gòu)的一般形式可表示如下:嵌套結(jié)構(gòu)的一般形式可表示如下: if(表達(dá)式表達(dá)式1) if( 表達(dá)式表達(dá)式2 ) 語(yǔ)句語(yǔ)句1 else 語(yǔ)句語(yǔ)句2 else if(表達(dá)式表達(dá)式3)語(yǔ)句語(yǔ)句 else

11、 語(yǔ)句語(yǔ)句4注意:注意:ifif與與e1see1se的配對(duì)關(guān)的配對(duì)關(guān)系。從最內(nèi)層開(kāi)始,系。從最內(nèi)層開(kāi)始,e1see1se總是與它上面總是與它上面最近的(未曾配對(duì)最近的(未曾配對(duì)的)的)if if 配對(duì)。配對(duì)。#include “stdio.h”main( ) float x,y; scanf(f,&x); if(x!=0) if(x0) y=1; /*嵌套的嵌套的if-else語(yǔ)句語(yǔ)句 else y=-1; else y=0; printf(f, f,x,y);010001xxxy思考:思考:使用使用if-else if-if-else if-elseelse語(yǔ)句改寫該語(yǔ)句改寫該程序。程序。

12、4.3.3 4.3.3 條件運(yùn)算符和條件表達(dá)式條件運(yùn)算符和條件表達(dá)式 條件運(yùn)算符:條件運(yùn)算符:三目運(yùn)算符三目運(yùn)算符( (? :) )結(jié)合性:從右到左結(jié)合性:從右到左優(yōu)先級(jí):優(yōu)先級(jí):高于賦值運(yùn)算符高于賦值運(yùn)算符,低于邏輯、算術(shù)和關(guān)系運(yùn)算符。,低于邏輯、算術(shù)和關(guān)系運(yùn)算符。 條件表達(dá)式格式:條件表達(dá)式格式: 表達(dá)式表達(dá)式1 1? 表達(dá)式表達(dá)式2 2 :表達(dá)式:表達(dá)式3 3 求值規(guī)則:求值規(guī)則: 先求表達(dá)式先求表達(dá)式1 1的值,非的值,非0 0時(shí),條件表達(dá)式的值為表達(dá)時(shí),條件表達(dá)式的值為表達(dá)式式2 2的值,否則為表達(dá)式的值,否則為表達(dá)式3 3的值的值 如:如:xy ? 1xy ? 1:1.5 1.5

13、例:求兩數(shù)中較大者例:求兩數(shù)中較大者#include “stdio.h”main() int a,b,max;printf(n input two numbers: );scanf(%d,%d,&a,&b);max=a;if (maxb) printf(max=%dn,a); else printf(max=%dn,b);max=ab ? a:b說(shuō)明說(shuō)明: 1.1.表達(dá)式可是表達(dá)式可是整型、字符型整型、字符型表達(dá)式表達(dá)式。 2.case2.case和常量表達(dá)式間一定和常量表達(dá)式間一定要要有空格,有空格,casecase后的語(yǔ)句可以后的語(yǔ)句可以沒(méi)有,也可以有多個(gè)沒(méi)有,也可以有多個(gè)( (可以不用可

14、以不用“ ”括起來(lái)括起來(lái) ) )。 3.3.每個(gè)每個(gè)casecase的常量表達(dá)式的的常量表達(dá)式的值必須互不相同。值必須互不相同。 4.default4.default子句的位置隨意。子句的位置隨意。功能功能: : 先計(jì)算表達(dá)式的值先計(jì)算表達(dá)式的值, ,若該值與若該值與casecase后某一常量表達(dá)式的值相等后某一常量表達(dá)式的值相等,則執(zhí)行此,則執(zhí)行此casecase后的后的所有語(yǔ)句所有語(yǔ)句,直至直至switchswitch語(yǔ)句體結(jié)束。語(yǔ)句體結(jié)束。 若不等,則執(zhí)行若不等,則執(zhí)行defaultdefault后的語(yǔ)后的語(yǔ)句。句。switch ( cj/10) case 9: printf (A n)

15、; case 8 : printf (B n); case 7 : printf (Cn); case 6 : printf (Dn); default : printf(En);若若cj=85,則將輸出:則將輸出:BCDE如如: switch ( cj/10) case 10: case 9: printf (“A n”); break; case 8 : printf (“B n”); break ; case 7 : printf (“Cn”); break; case 6 : printf (“Dn”); break; default : printf(“En”); 關(guān)于關(guān)于break

16、語(yǔ)句語(yǔ)句1.break1.break語(yǔ)句又稱語(yǔ)句又稱間斷語(yǔ)句。間斷語(yǔ)句。2.2.可以用在可以用在casecase語(yǔ)句之后,語(yǔ)句之后,跳出跳出switchswitch語(yǔ)句體。語(yǔ)句體。若若cj=85,則將輸出:則將輸出:B【例例4.8】編寫程序,輸入編寫程序,輸入110之間的任之間的任意一個(gè)數(shù)字,輸出相應(yīng)的英文單詞。意一個(gè)數(shù)字,輸出相應(yīng)的英文單詞。 #include stdio.hmain()int a; printf(input integer number: ); scanf(%d,&a); switch (a) case 1: printf(Onen); break; case 2: pri

17、ntf(Twon); break; case 3: printf(Threen); break; case 4: printf(Fourn); break; case 5: printf(Friven); break; default: printf(errorn); 【例例4.11】若若x為實(shí)型量,為實(shí)型量,計(jì)算分段函數(shù):計(jì)算分段函數(shù): 5 . 45 . 3235 . 35 . 22*35 . 25 . 1235 . 15 . 023xxxxxxxxy#include stdio.hmain( )float x,y;scanf(%f,&x);if(x=4.5) printf(x errorn

18、);else if(x1.5) y=3+2*x; else if(x2.5) y=3-2*x; else if(x3.5) y=3*2*x; else y=3/(2*x); printf(y=%f,y);#include stdio.hmain( ) float x,y;scanf(%f,x);switch(int)(x+0.5)case 1: y=3+2*x;break; case 2: y=3-2*x;break; case 3: y=3*2*x;break; case 4: y=3/(2*x);break; default: printf(“x errorn”);printf(y%f,y);

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

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!

五月丁香婷婷狠狠色,亚洲日韩欧美精品久久久不卡,欧美日韩国产黄片三级,手机在线观看成人国产亚洲