![信息技術(shù)九年級(jí)北師大版選擇結(jié)構(gòu)程序設(shè)計(jì)課件_第1頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-3/15/7ba6132a-f1c6-48bc-9289-a1e3d8e95d8c/7ba6132a-f1c6-48bc-9289-a1e3d8e95d8c1.gif)
![信息技術(shù)九年級(jí)北師大版選擇結(jié)構(gòu)程序設(shè)計(jì)課件_第2頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-3/15/7ba6132a-f1c6-48bc-9289-a1e3d8e95d8c/7ba6132a-f1c6-48bc-9289-a1e3d8e95d8c2.gif)
![信息技術(shù)九年級(jí)北師大版選擇結(jié)構(gòu)程序設(shè)計(jì)課件_第3頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-3/15/7ba6132a-f1c6-48bc-9289-a1e3d8e95d8c/7ba6132a-f1c6-48bc-9289-a1e3d8e95d8c3.gif)
![信息技術(shù)九年級(jí)北師大版選擇結(jié)構(gòu)程序設(shè)計(jì)課件_第4頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-3/15/7ba6132a-f1c6-48bc-9289-a1e3d8e95d8c/7ba6132a-f1c6-48bc-9289-a1e3d8e95d8c4.gif)
![信息技術(shù)九年級(jí)北師大版選擇結(jié)構(gòu)程序設(shè)計(jì)課件_第5頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-3/15/7ba6132a-f1c6-48bc-9289-a1e3d8e95d8c/7ba6132a-f1c6-48bc-9289-a1e3d8e95d8c5.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、選擇結(jié)構(gòu)程序設(shè)計(jì)21. if語(yǔ)句語(yǔ)句2. switch語(yǔ)句語(yǔ)句3. 選擇結(jié)構(gòu)程序設(shè)計(jì)舉例選擇結(jié)構(gòu)程序設(shè)計(jì)舉例【問(wèn)題問(wèn)題】1、從鍵盤(pán)輸入一個(gè)數(shù),如果該數(shù)為正,打印,否則不打??;2、解一元二次方程,求出相應(yīng)的實(shí)根或復(fù)根。3if 語(yǔ)句語(yǔ)句1 簡(jiǎn)單簡(jiǎn)單if語(yǔ)句語(yǔ)句一般格式一般格式:if(表達(dá)式表達(dá)式) 語(yǔ)句體語(yǔ)句體【說(shuō)明說(shuō)明】1)表達(dá)式:常量、變量、函數(shù)調(diào)用、表達(dá))表達(dá)式:常量、變量、函數(shù)調(diào)用、表達(dá)式式2)表達(dá)式必須加()括起來(lái)。)表達(dá)式必須加()括起來(lái)。3)語(yǔ)句體:一條)語(yǔ)句體:一條 或或 多條語(yǔ)句(多條語(yǔ)句多條語(yǔ)句(多條語(yǔ)句用用括起來(lái))括起來(lái))4)執(zhí)行過(guò)程:)執(zhí)行過(guò)程: 當(dāng)表達(dá)式的值為非當(dāng)表達(dá)式的
2、值為非0(真)時(shí),(真)時(shí),執(zhí)行語(yǔ)句體執(zhí)行語(yǔ)句體5) 一個(gè)一個(gè)if語(yǔ)句總體上只算一條語(yǔ)句語(yǔ)句總體上只算一條語(yǔ)句4 例例5.2輸入任意三個(gè)數(shù)a、b、c,按從小到大的順序排序輸出。 分析: a b c 5 2 3 2 3 5 if (ab) a和b交換,令 a=mina, b if (ac) a和c交換,令 a=mina, b, c if (bc) b和c交換,另b為次大值,c為最大值 if 語(yǔ)句語(yǔ)句交換a和b的內(nèi)容5 t=a 5 a=b b=a t 5 5 2255 例例5.2輸入三個(gè)數(shù)a、b、c,按從小到大的順序輸出。 main() int a,b,c,t; printf(“input thr
3、ee numbers:n); scanf(%d,%d,%d,&a,&b,&c); if (ab) t=a;a=b;b=t; if (ac) t=a;a=c;c=t; if (bc) t=b;b=c;c=t; printf( %d,%d,%dn,a,b,c);input three numbers:11,22,18 11,18,22沒(méi)有分沒(méi)有分號(hào)號(hào)if 語(yǔ)句語(yǔ)句6ifelse語(yǔ)句語(yǔ)句1復(fù)合if語(yǔ)句的一般格式 if(表達(dá)式表達(dá)式) 語(yǔ)語(yǔ)句體句體1 else 語(yǔ)語(yǔ)句體句體2 【說(shuō)明說(shuō)明】(1)else必須與if配對(duì)使用,不能單獨(dú)使用。(2)if語(yǔ)句允許嵌套,但嵌套的層數(shù)不宜太多。例 如 : i f
4、( a b ) max=a; else max=b;ifelse 的執(zhí)行過(guò)的執(zhí)行過(guò)程程表達(dá)式的值表達(dá)式的值語(yǔ)句體語(yǔ)句體1語(yǔ)句體語(yǔ)句體2執(zhí)行執(zhí)行if后的語(yǔ)句后的語(yǔ)句非非0T為為0F7程序1: if(x=0) if(x0) y=1; else y=0; else y=-1;)0(1)0(0)0(1xxxy當(dāng)當(dāng)當(dāng)if語(yǔ)句嵌套時(shí),語(yǔ)句嵌套時(shí),else子句與子句與1.在它上面、在它上面、2.距它最近、距它最近、3. 尚未匹配尚未匹配的的if配對(duì)。配對(duì)。例例5.3程序2:if(x0) y=1; else y=0; 程序4:y=0; if(x=0) if(x0) y=1;else y=-1; x=0時(shí)時(shí) x
5、=-5 ifelse語(yǔ)句語(yǔ)句8ifelse if語(yǔ)句語(yǔ)句1格式 if(表達(dá)式表達(dá)式1) 語(yǔ)句組語(yǔ)句組1else if (表達(dá)式表達(dá)式2) 語(yǔ)句組語(yǔ)句組2 else if (表達(dá)式表達(dá)式3) 語(yǔ)句組語(yǔ)句組3 else if (表達(dá)式表達(dá)式4) 語(yǔ)句組語(yǔ)句組4 else if (表達(dá)式表達(dá)式n) 語(yǔ)句組語(yǔ)句組n else 語(yǔ)句組語(yǔ)句組n+1計(jì)算表達(dá)式1的值真否?語(yǔ)句組1語(yǔ)句組2FT執(zhí)行復(fù)合語(yǔ)句后的語(yǔ)句計(jì)算表達(dá)式2的值真否?TF計(jì)算表達(dá)式3的值真否?T 語(yǔ)句組39程序1: if(x=0) if(x0) y=1; else y=0; else y=-1;)0(1)0(0)0(1xxxy當(dāng)當(dāng)當(dāng)例例5.3
6、程序2:if(x0) y=-1;else if(x=0) y=0; else y=1;ifelse if語(yǔ)句語(yǔ)句10課堂練習(xí):if 語(yǔ)句應(yīng)用實(shí)例)10(113)101(12)1(xxxxxxy 分別用三種分別用三種if語(yǔ)句編寫(xiě)程序:鍵盤(pán)輸入語(yǔ)句編寫(xiě)程序:鍵盤(pán)輸入x,輸,輸出出y (1)簡(jiǎn)單)簡(jiǎn)單if語(yǔ)句、語(yǔ)句、 (2)ifelse語(yǔ)句、語(yǔ)句、 (3)ifelse if語(yǔ)句分別實(shí)現(xiàn)。語(yǔ)句分別實(shí)現(xiàn)。11算法一:用算法一:用if語(yǔ)句實(shí)現(xiàn)語(yǔ)句實(shí)現(xiàn)main() float x,y; printf(x=?); scanf(%f,&x); if(x1) y=x; if(x=1) y=2*x-1; if(x=
7、10) y=3*x+11; printf(%.2f,y);12算法二:用算法二:用ifelse語(yǔ)句實(shí)現(xiàn)語(yǔ)句實(shí)現(xiàn)main() float x,y; printf(x=?); scanf(%f,&x); if(x=1 */ if (x=1 & x=10 */ printf(%.2f,y);13算法三:用算法三:用ifelse if語(yǔ)句實(shí)現(xiàn)語(yǔ)句實(shí)現(xiàn)main() float x,y; printf(x=?); scanf(%f,&x); if(x1) y=x; else if (x=1 & x=10 */ printf(%.2f,y);14輸入星期中的某一天輸入星期中的某一天,顯示對(duì)應(yīng)的英顯示對(duì)應(yīng)的英
8、文文#includemain() int i; printf(“Input 1- 7: ”); scanf(“%d”,&i); if (i=1) printf ( “Today is Monday!n”); else if (i=2) printf (“Today is Tuesday!n”); else if (i=3) printf (“Today is Wednesday !n”); else if (i=4) printf( “Today is Thursday!n”); else if (i=5) printf( “Today is Friday!n”); else if (i=6)
9、 printf( “Today is Saturday!n”); else printf( “Today is Sunday!n”);復(fù)雜!復(fù)雜!15 switch語(yǔ)句語(yǔ)句1一般形式一般形式switch (條件表達(dá)式條件表達(dá)式) case 常量表達(dá)式常量表達(dá)式1:語(yǔ)語(yǔ)句組句組1; case 常量表達(dá)式常量表達(dá)式2:語(yǔ)語(yǔ)句組句組2; . case 常量表達(dá)式常量表達(dá)式:語(yǔ)句組語(yǔ)句組n; default: 語(yǔ)語(yǔ)句組句組n+1; 2執(zhí)行過(guò)程執(zhí)行過(guò)程(1)若)若 條件表達(dá)式條件表達(dá)式=常量表達(dá)式常量表達(dá)式i 則則 執(zhí)行語(yǔ)句組執(zhí)行語(yǔ)句組i 以及語(yǔ)句組以及語(yǔ)句組i+1語(yǔ)句組語(yǔ)句組n+1(2)若)若 條件表
10、達(dá)式條件表達(dá)式 != 任何常量表達(dá)式任何常量表達(dá)式 則則 執(zhí)行執(zhí)行default 的語(yǔ)句組的語(yǔ)句組n+1沒(méi)有分號(hào)沒(méi)有分號(hào)沒(méi)有分號(hào)沒(méi)有分號(hào)16main() int i; printf( “Input 1- 7: ”); scanf(“%d”,&i); switch(i) case 1: printf( “Today is Monday!”); case 2: printf( “Today is Tuesday!”); case 3: printf( “Today is Wednesday !”); case 4: printf( “Today is Thursday!”); case 5: pr
11、intf( “Today is Friday!”); case 6: printf( “Today is Saturday!”); default: printf( “Today is Sunday!”); 輸入星期中的某一天,顯示對(duì)應(yīng)的英文break;break;break;break;break;break; 運(yùn)行結(jié)果Input 1- 7: 4Today is Thursday!Today is Friday!Today is Saturday!Today is Sunday! break:跳出:跳出switch結(jié)構(gòu)結(jié)構(gòu)空格空格173說(shuō)明說(shuō)明(1)條件表達(dá)式:)條件表達(dá)式:常量常量表達(dá)式,
12、表達(dá)式,int、char、枚舉型枚舉型 例:例: case 3+4:/* 正確正確*/ case x+y: /*錯(cuò)誤錯(cuò)誤 設(shè)設(shè)int x=3,y=4;*/(2)多個(gè))多個(gè)case子句,可共用同一語(yǔ)句子句,可共用同一語(yǔ)句(組)。(組)。例如例如: case 10: case 9: printf(grade=An); break;(3)default可以省略;可以省略;(4)每個(gè))每個(gè)case后面的語(yǔ)句有多條語(yǔ)句時(shí)可后面的語(yǔ)句有多條語(yǔ)句時(shí)可以不加以不加括起來(lái)。括起來(lái)。 switch語(yǔ)句 18例例:從鍵盤(pán)上輸入一個(gè)百分制成績(jī)從鍵盤(pán)上輸入一個(gè)百分制成績(jī)score,輸出其等級(jí):,輸出其等級(jí):score9
13、0,等級(jí)為,等級(jí)為A;80score90,等級(jí)為,等級(jí)為B;70score80,等級(jí)為,等級(jí)為C;60score70,等級(jí)為,等級(jí)為D;score 0-10選擇結(jié)構(gòu)程序設(shè)計(jì)舉例選擇結(jié)構(gòu)程序設(shè)計(jì)舉例19main() int score; printf(“Input a score(0100): ”); scanf(“%d”, &score); /* 將成績(jī)轉(zhuǎn)化成10種情形 */ switch (score/10) case 10: case 9: printf(“grade=An”); break; case 8: printf(grade=Bn); break; case 7: printf(
14、grade=Cn); break; case 6: printf(grade=Dn); break; case 5: case 4: case 3: case 2: case 1: case 0: printf(“grade=En”); break; default: printf(“The score is out of range!n”); 選擇結(jié)構(gòu)程序設(shè)計(jì)舉例選擇結(jié)構(gòu)程序設(shè)計(jì)舉例20 選擇結(jié)構(gòu)程序設(shè)計(jì)舉例例例5.6 求一元二次方程求一元二次方程ax2+bx+c=0的解的解(a0)。)。分析:disc=b2-4ac=0 x1=x2=-b/(2a) disc=b2-4ac0 x1=(-b+s
15、qrt(disc)/(2a) x2=(-b-sqrt(disc)/(2a) disc=b2-4ac0 x1=(-b/(2a)+sqrt(disc)/(2a) i x2=(-b/(2a)-sqrt(disc)/(2a) i輸出輸出數(shù)值數(shù)值數(shù)值數(shù)值+數(shù)值iprintf(“%f + %f i“, p, q);#includemain() int a,b,c,disc; float x1,x2,p,q; scanf(“%d, %d,%d”, &a, &b, &c); 21 disc=b*b-4*a*c; if (disc=0) printf(“x1=x2=%fn”, -b/(2*a); else /*
16、 disc!=0*/ if (disc0) /* disc0*/ x1=(-b+sqrt(disc)/(2*a);/*兩個(gè)不等實(shí)根*/ x2=(-b-sqrt(disc)/(2*a); printf(x1=%f, x2=%fn, x1, x2); else /* disc0 x1=(-b+sqrt(disc)/(2a) x2=(-b-sqrt(disc)/(2a) disc=b2-4ac0 x1=(-b/(2a)+sqrt(disc)/(2a) i x2=(-b/(2a)-sqrt(disc)/(2a) i輸出輸出數(shù)值數(shù)值數(shù)值數(shù)值+數(shù)值i#includemain() int a,b,c,disc; float x1,x2,p,q; scanf(“%d, %d,%d”, &a, &b, &c); floatfff23 disc=b*b-4*a*c; /*float*/ if (disc=0) printf(“x1=x2=%fn”, -b/(2*a); else /* disc!=0*/ if (disc0) /* disc0*/ x1=(-b+sqrt(disc)/(2*a);/*兩個(gè)不等實(shí)根*/ x2=(-b-sqrt(disc)/(2*a); printf
溫馨提示
- 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. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年聲學(xué)懸浮物監(jiān)測(cè)儀合作協(xié)議書(shū)
- 2025年基礎(chǔ)機(jī)械:液壓件合作協(xié)議書(shū)
- 2025年沼氣集中供氣系統(tǒng)合作協(xié)議書(shū)
- 2025年產(chǎn)品特許經(jīng)營(yíng)合同常用版(4篇)
- 2025年二手房東房屋租賃合同標(biāo)準(zhǔn)版本(4篇)
- 2025年九年級(jí)音樂(lè)教師工作總結(jié)第二學(xué)期(二篇)
- 2025年買(mǎi)賣(mài)房產(chǎn)合同標(biāo)準(zhǔn)版本(2篇)
- 2025年個(gè)人房屋租賃合同協(xié)議參考樣本(三篇)
- 2025年臨時(shí)勞動(dòng)協(xié)議標(biāo)準(zhǔn)范文(2篇)
- 2025年企業(yè)勞動(dòng)員工勞動(dòng)合同模板(2篇)
- GB/T 45107-2024表土剝離及其再利用技術(shù)要求
- 安裝門(mén)窗施工方案
- 人教版九年級(jí)英語(yǔ)動(dòng)詞時(shí)態(tài)專(zhuān)項(xiàng)練習(xí)(含答案和解析)
- 蘭州市規(guī)范醫(yī)療服務(wù)價(jià)格項(xiàng)目基準(zhǔn)價(jià)格表
- 2006年度銀行業(yè)金融機(jī)構(gòu)信息科技風(fēng)險(xiǎn)評(píng)價(jià)審計(jì)要點(diǎn)
- 火災(zāi)隱患整改登記表
- 普通地質(zhì)學(xué)教材
- 2022年全國(guó)高考詩(shī)歌鑒賞試題-教學(xué)課件
- 天津華寧KTC101說(shuō)明書(shū)
- 2023-2024學(xué)年浙江省杭州市小學(xué)語(yǔ)文六年級(jí)上冊(cè)期末深度自測(cè)試題
- 縣道及以上公路保潔考核檢查評(píng)分表
評(píng)論
0/150
提交評(píng)論