




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、一、教學(xué)思想(包括教學(xué)背景、教學(xué)目標(biāo))1、 關(guān)于“C語言” 計算機(jī)的本質(zhì)是“程序的機(jī)器”,程序和指令的思想是計算機(jī)系統(tǒng)中最基本的概念,只有懂得程序設(shè)才能懂得計算機(jī),真正了解計算機(jī)是怎樣工作的;通過學(xué)習(xí)程序設(shè)計可以使我們進(jìn)一步了解計算機(jī)的工作原理,更好地理解個應(yīng)用計算機(jī),學(xué)會用計算機(jī)處理問題的方法。C語言作為一種高級程序設(shè)計語言,相比其他高級程序設(shè)計語言有著公認(rèn)的一些特點,比如語言本身簡介,生成的代碼質(zhì)量高,使用靈活等。它既可以編寫計算機(jī)系統(tǒng)軟件又可以編寫各類應(yīng)用軟件。C語言作為一種簡潔高校并且支持結(jié)構(gòu)化編程的程序設(shè)計語言,在講究效率的時代,對于幫助學(xué)習(xí)者掌握程序設(shè)計的基本思想和方法,進(jìn)而更好地
2、理解計算機(jī)的工作,會有極大的幫助。2、 關(guān)于選擇結(jié)構(gòu)程序設(shè)計選擇結(jié)構(gòu)程序設(shè)計是結(jié)構(gòu)化程序設(shè)計的3種基本結(jié)構(gòu)之一,是程序設(shè)計中常用的結(jié)構(gòu)。前面介紹的順序結(jié)構(gòu)里,程序中的所有語句按照書寫順序依次執(zhí)行。而在日常生活中,處理事情的順序并不都是按部就班的順序進(jìn)行,有時會根據(jù)某些條件進(jìn)行選擇。比如在進(jìn)行周末活動安排時,我們可以說:“如果天氣好,我們就去郊游,否則我們就去體育館打球。”在這樣安排中,可以看到,“郊游”和“打球”哪個動作實際執(zhí)行依賴于“天氣好”這個條件是否滿足。在程序設(shè)計中,上述安排就要用選擇結(jié)構(gòu)來實現(xiàn)。選擇結(jié)構(gòu)的作用是根據(jù)所給條件的真假,決定程序的運行途徑。在上述實例中,“天氣好?”是控制條
3、件,它的作用是決定程序的流程,如果天氣確實好,則條件為真,進(jìn)行“郊游”這個活動,如果天氣不好,則條件為假,進(jìn)行“打球”這個活動?!敖加巍焙汀按蚯颉皟蓚€活動只進(jìn)行一個,該選擇結(jié)構(gòu)結(jié)束后,再執(zhí)行下面的語句。3、 教學(xué)目標(biāo)知識與技能目標(biāo):掌握關(guān)系運算、邏輯運算和C語言條件語句的使用。過程與方法目標(biāo):通過課程舉例,程序的比較和運行和程序流程圖的使用,讓學(xué)生加深記憶,理解條件語句的執(zhí)行順序。情感態(tài)度與價值觀目標(biāo):學(xué)習(xí)條件語句使學(xué)生進(jìn)一步了解程序,對程序設(shè)計產(chǎn)生學(xué)習(xí)興趣。4、 教學(xué)重點與難點重點:if語句、switch語句的使用難點:if語句的嵌套 二、課程設(shè)計思路(包括教學(xué)方法、教學(xué)手段) 教學(xué)步驟教學(xué)
4、內(nèi)容設(shè)計意圖表達(dá)方式1、學(xué)習(xí)關(guān)系運算和關(guān)系表達(dá)式2、學(xué)習(xí)邏輯運算和邏輯表達(dá)式以及運算符的優(yōu)先次序2、學(xué)習(xí)邏輯運算和邏輯表達(dá)式以及運算符的優(yōu)先次序3、 使用if語句實現(xiàn)選擇結(jié)構(gòu)和條件判斷語句3、 使用if語句實現(xiàn)選擇結(jié)構(gòu)和條件判斷語句3、使用if語句實現(xiàn)選擇結(jié)構(gòu)和條件判斷語句關(guān)系運算符:用來對兩個數(shù)值進(jìn)行比較的比較運算符語言提供種關(guān)系運算符: (小于) = (小于或等于) (大于) = (大于或等于) = (等于) != (不等于) 關(guān)系表達(dá)式用關(guān)系運算符將兩個數(shù)值或數(shù)值表達(dá)式連接起來的式子1 真0 假<表達(dá)式> <關(guān)系運算符> <表達(dá)式>關(guān)系表達(dá)式的值是一個
5、邏輯值例: a+b> c+d (a=3) < (b=5) a!=A (a>b)=(c<d) 3種邏輯運算符:&&(邏輯與) |(邏輯或) !(邏輯非)&&和|是雙目(元)運算符!是一目(元)運算符邏輯表達(dá)式<表達(dá)式> <邏輯運算符> <表達(dá)式>例: 判斷年齡在13至17歲之內(nèi)? age>=13 && age<=17 判斷年齡小于12或大于65? age<12 | age>65邏輯運算符的優(yōu)先次序! && | (!為三者中最高)與其他運算符的優(yōu)先次序
6、 ! (高) 算術(shù)運算符 關(guān)系運算符 && 和 | 賦值運算符 (低)例:判別某一年是否閏年,用邏輯表達(dá)式表示閏年的條件是符合下面二者之一:能被4整除,但不能被100整除,如2008能被400整除,如2000(year % 4 = 0 && year 100 !=0)| year % 400 = 0如果表達(dá)式值為1,則閏年;否則為非閏年例: 例:求 方程的根。由鍵盤輸入a,b,c。假設(shè)a,b,c的值任意,并不保證 。 需要在程序中進(jìn)行判別,如果 ,就計算并輸出方程的兩個實根,否則就輸出“方程無實根”的信息。 左邊為順序結(jié)構(gòu)的程序流程圖,右邊為選擇結(jié)構(gòu)程序流程圖。
7、比較它們的之間區(qū)別。#include <stdio.h>#include <math.h>int main ( ) double a,b,c,disc,x1,x2,p,q; scanf("%lf%lf%lf",&a,&b,&c);disc=b*b-4*a*c;if (disc<0) printf(“has not real rootsn”); else p=-b/(2.0*a); q=sqrt(disc)/(2.0*a); x1=p+q; x2=p-q; printf(“real roots:nx1=%7.2fnx2=%
8、7.2fn”,x1,x2); return 0;當(dāng)程序輸入6,3,1時,它的運行結(jié)果是什么?當(dāng)程序輸入2,4,1時,它的運行結(jié)果是什么?例:輸入兩個實數(shù),按代數(shù)值由小到大的順序輸出這兩個數(shù)。解題思路:只需要做一次比較,然后進(jìn)行一次交換即可用if語句實現(xiàn)條件判斷關(guān)鍵是怎樣實現(xiàn)兩個變量值的互換#include <stdio.h>int main() float a,b,t; scanf("%f,%f",&a,&b); if(a>b) t=a; a=b; b=t; printf("%5.2f,%5.2fn",a,b); ret
9、urn 0;例: 輸入3個數(shù)a,b,c,要求按由小到大的順序輸出。解題思路:可以先用偽代碼寫出算法:if a>b,a和b對換 (a是a、b中的小者)if a>c,a和c對換 (a是三者中最小者)if b>c,b和c對換 (b是三者中次小者)順序輸出a,b,c#include <stdio.h>int main() float a,b,c,t; scanf("%f,%f,%f",&a,&b,&c); if(a>b) 如果 a>b,將a和b對換 t=a; a=b; b=t; a是a、b中的小者 if(a>c
10、) 如果 a>c,將a和b對換 t=a; a=c; c=t; a是a、c中的小者 if(b>c) 如果 b>c,將a和b對換 t=b; b=c; c=t; b是b、c中的小者 printf("%5.2f,%5.2f,%5.2fn",a,b,c); return 0;運行程序并輸出結(jié)果。if語句的一般形式:if (表達(dá)式) 語句1 else 語句2 最常用的3種if語句形式:1. if (表達(dá)式) 語句1 (沒有else子句)2. if (表達(dá)式) 語句1 else 語句2 (有else子句)3. if(表達(dá)式) 語句 else if(表達(dá)式) 語句 els
11、e if(表達(dá)式) 語句 else if(表達(dá)式) 語句 else 語句m+1 (在else部分又嵌套了多層的if語句)選擇結(jié)構(gòu)程序設(shè)計中條件語句的使用需要使用關(guān)系運算和邏輯運算。使用簡單的例子便于學(xué)生理解。在教學(xué)過程中由簡入難選擇結(jié)構(gòu)和條件判斷語句是本章的重難點,對于初學(xué)者有一定的難度,這一部分內(nèi)容采用大量的例題以便學(xué)生理解和掌握選擇語句的用法。通過例題的實際運用讓學(xué)生了解條件判斷的作用選擇結(jié)構(gòu)的使用。通過例題的學(xué)習(xí)引入if語句的格式和使用方法。讓學(xué)生自己找出規(guī)律加深記憶。3、使用if語句實現(xiàn)選擇結(jié)構(gòu)和條件判斷語句3、 使用if語句實現(xiàn)選擇結(jié)構(gòu)和條件判斷語句4、條件運算符和條件表達(dá)式 例:某
12、運輸公司噸公里基本運費為p,根據(jù)距離s的遠(yuǎn)近計費標(biāo)準(zhǔn)如下: s<250km 沒有折扣 250£ s<500 2% 折扣 500 £ s<1000 5% 折扣 1000 £ s<2000 8% 折扣 2000 £ s<3000 10%折扣 3000 £ s 15%折扣 根據(jù)貨物重量w和運距s,求運費f。 main( ) float p,s,w,d,f; scanf(“%f %f %f ”,&p,&s,&w); if(s>=3000) d=0.15; else if(s>=2000)
13、 d=0.10; else if(s>=1000) d=0.08; else if(s>=500) d=0.05; else if(s>=250) d=0.02; else d=0.0; f=p*w*s*(1-d); printf(“f=%15.2f ”, f); 選擇結(jié)構(gòu)的嵌套:在if語句中又包含一個或多個if語句稱為if語句的嵌套一般形式:else總是與它上面最近的未配對的if配對if( ) if( ) 語句1 else 語句2 else if( ) 語句3 else 語句4 內(nèi)嵌if 例:有一函數(shù): 編一程序,輸入一個x值,要求輸出相應(yīng)的y值。解題思路:方法1scanf
14、("%d",&x);if(x<0) y = -1;if(x=0) y = 0;if(x>0) y = 1;printf("x=%d,y=%dn",x,y);(1) 先后用3個獨立的if語句處理:輸入x若 x < 0, 則y =-1若 x = 0, 則y = 0若 x > 0, 則y = 1輸出x和yscanf("%d",&x);if (x>=0) if (x>0) y=1; else y=0;else y=-1;printf("x=%d,y=%dn",x,y);解
15、題思路:方法2scanf("%d",&x);if(x<0) y=-1; else if(x=0) y=0; else y=1;printf("x=%d,y=%dn",x,y);(2) 用一個嵌套的if語句處理:輸入x若x < 0, 則y = -1 否則 若 x = 0, 則y = 0 否則 y = 1輸出x和y有一種if語句,當(dāng)被判別的表達(dá)式的值為“真”或“假” 時,都執(zhí)行一個賦值語句且向同一個變量賦值如:if (a>b)max = (a > b) ? a : b; max=a; else max=b;1、條件表達(dá)式的一般
16、形式<表達(dá)式1> ?<表達(dá)式2> :<表達(dá)式3>2、 運算規(guī)則右結(jié)合先計算表達(dá)式1,若為非0,則以表達(dá)式2的值作為條件表達(dá)式的值;否則,以表達(dá)式3的值為條件表達(dá)式的值。3、 優(yōu)先級算術(shù) 關(guān)系 邏輯運算(!除外) 條件運算 賦值運算高 低(1) 輸出x和y當(dāng)中的最大值 z=x>y ? x : y ; printf(“max=%d”,z);或 printf(“max=%d”,x>y?x:y); 或 x>y?printf (“%d”,x) : printf (“%d”,y); (2) a>b?a:b+1等價于a>b?a:(b+1)而不
17、是(a>b?a:b)+1(3) a>b?a:c>d?c:d等價于a>b?a:(c>d?c:d)(4) x>y?1:5.6 表達(dá)式的值的類型取高的運用例題鞏固知識,實現(xiàn)多重選擇語句的使用。引用例題使用多種方法說明if的嵌套使用,便于理解和記憶。條件運算符和條件表達(dá)式相對而言比較簡單,在教學(xué)過程中列舉表達(dá)式的一般形式并舉例說明。4、條件運算符和條件表達(dá)式5、用switch語句實現(xiàn)多分支選擇結(jié)構(gòu) 例: 輸入一個字符,判別它是否大寫字母,如果是,將它轉(zhuǎn)換成小寫字母;如果不是,不轉(zhuǎn)換。然后輸出最后得到的字符。#include <stdio.h>int ma
18、in() char ch; scanf("%c",&ch); ch=(ch>='A' && ch<='Z)?(ch+32):ch; printf("%cn",ch); return 0;switch語句的作用是根據(jù)表達(dá)式的值,使流程跳轉(zhuǎn)到不同的語句switch語句的一般形式:switch(表達(dá)式) case 常量1 :語句1 case 常量2 :語句2 case 常量n :語句n default : 語句n+1switch語句的作用是根據(jù)表達(dá)式的值,使流程跳轉(zhuǎn)到不同的語句switch語句的執(zhí)行過
19、程:當(dāng)switch后的表達(dá)式的值與某一個case后的常量表達(dá)式的值相等時,執(zhí)行其后的語句;若無匹配,則執(zhí)行default后的語句break 語句使流程跳出switch結(jié)構(gòu),終止switch語句的執(zhí)行。例:要求按照考試成績的等級輸出百分制分?jǐn)?shù)段,A等為85分以上,B等為7084分,C等為6069分 ,D等為 60分以下 。成績的等級由鍵盤輸入。#include <stdio.h>int main() char grade; scanf("%c",&grade); printf("Your score:"); switch(grade) case 'A': printf("85100n");break; case 'B': printf("7084n");break; case 'C': printf("6069n");break; case 'D'
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 高職院校內(nèi)部督導(dǎo)體系建設(shè)中的師生互動與溝通機(jī)制
- 電動交通與綠色能源轉(zhuǎn)型的融合發(fā)展路徑
- 創(chuàng)新性融資方式對非遺傳承的推動作用
- 廣東省寶塔實驗2025屆八上物理期末質(zhì)量檢測試題含解析
- 云南省蒙自市2024-2025學(xué)年八年級物理第一學(xué)期期末達(dá)標(biāo)檢測模擬試題含解析
- 九江市重點中學(xué)2025屆數(shù)學(xué)七上期末聯(lián)考模擬試題含解析
- 餐飲店轉(zhuǎn)讓及員工激勵機(jī)制合同范本
- 中國鐵路運輸行業(yè)噪聲控制標(biāo)準(zhǔn)化建設(shè)實踐經(jīng)驗分享
- 電信行業(yè)服務(wù)質(zhì)量提升策略研究
- 中國信息通信研究院-算力中心服務(wù)商分析報告(2025年)
- 透析病人營養(yǎng)不良的護(hù)理
- 充電樁項目實施過程中的質(zhì)量保證措施
- T-CPUMT 025-2024 工業(yè)互聯(lián)網(wǎng)平臺 服務(wù)通.用要求
- 2025年度地質(zhì)勘探監(jiān)理服務(wù)合同范本
- 保山隆陽區(qū)小升初數(shù)學(xué)試卷
- 2025年上半年北京市西城區(qū)教委事業(yè)單位公開招聘考試筆試易考易錯模擬試題(共500題)試卷后附參考答案
- RoHS知識培訓(xùn)課件
- 2024-2025學(xué)年北京西城區(qū)高一(上)期末語文試卷(含答案)
- 2025年貴州貴旅集團(tuán)雷山文化旅游產(chǎn)業(yè)發(fā)展有限責(zé)任公司招聘筆試參考題庫附帶答案詳解
- 2024年初升高數(shù)學(xué)銜接教材講義
- 血小板減少護(hù)理查房課件
評論
0/150
提交評論