C語言《排序算法》教學(xué)設(shè)計(jì)_第1頁
C語言《排序算法》教學(xué)設(shè)計(jì)_第2頁
C語言《排序算法》教學(xué)設(shè)計(jì)_第3頁
C語言《排序算法》教學(xué)設(shè)計(jì)_第4頁
C語言《排序算法》教學(xué)設(shè)計(jì)_第5頁
已閱讀5頁,還剩4頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、江蘇省職業(yè)學(xué)校專業(yè)技能課程“優(yōu)秀教學(xué)設(shè)計(jì)”評(píng)比教 案參評(píng)組別 信息技術(shù)類 參評(píng)科目 C語言 教案主題 排序算法 填 報(bào) 日 期 2014年05月28日 鎮(zhèn)江分院 歐陽麗娜 C語言排序算法教案(2課時(shí)) 一、教材分析C語言教程是計(jì)算機(jī)專業(yè)的專業(yè)必修課,也是計(jì)算機(jī)專業(yè)中一門理論性和邏輯性很強(qiáng)的課程。由于C語言要求表達(dá)整密且與其他計(jì)算機(jī)語言相比更加抽象,所以在所有計(jì)算機(jī)專業(yè)課程中被公認(rèn)為“最難學(xué)的一種計(jì)算機(jī)語言”本節(jié)內(nèi)容選自普通高等教育“十一五”國家級(jí)規(guī)劃教材,21世紀(jì)高職高專系列規(guī)劃教材中的C語言教程。課程的總體目標(biāo)是通過C語言的學(xué)習(xí),培養(yǎng)學(xué)生綜合運(yùn)用知識(shí)分析、分解問題,并用合適的算法語言表達(dá)、處

2、理問題的能力,學(xué)會(huì)一種嚴(yán)密的思維方式和表達(dá)方式,領(lǐng)會(huì)程序設(shè)計(jì)的精髓,從而培養(yǎng)較強(qiáng)邏輯思維、變通思維和創(chuàng)新思維能力。通過團(tuán)隊(duì)合作、交流等方法,使綜合素質(zhì)得到提升。從而達(dá)到專業(yè)學(xué)習(xí)的基本要求和人才培養(yǎng)目標(biāo)。排序算法是教材中第7章數(shù)組中的內(nèi)容。因?yàn)閿?shù)組是C語言中重要的數(shù)據(jù)類型,通過數(shù)組可以使排序問題的表達(dá)過程大大簡(jiǎn)化,所以掌握幾種常用又容易理解的排序算法還是很必要的。本節(jié)通過對(duì)冒泡排序和選擇排序兩種算法的討論、分析和理解,在更加熟悉數(shù)組表達(dá)方式的基礎(chǔ)上,對(duì)算法的進(jìn)一步了解,有助于培養(yǎng)學(xué)生的邏輯思維和變通思維能力。二、學(xué)情分析教學(xué)對(duì)象為五年制高職計(jì)算機(jī)軟件專業(yè)二年級(jí)學(xué)生,他們具有一定的計(jì)算機(jī)操作能力,

3、但是在程序設(shè)計(jì)方面是零基礎(chǔ),并且他們的數(shù)學(xué)理論基礎(chǔ)比較薄弱。同時(shí),他們正處于17,18歲的年紀(jì),思維活躍、意識(shí)超前,具有極強(qiáng)的好奇心與求知欲。但由于學(xué)生的抽象思維和自主學(xué)習(xí)能力較薄弱,又厭煩枯燥的文字說教,在教學(xué)過程中要盡量使用簡(jiǎn)單直觀的演示和表演方式, 使枯燥乏味的理論知識(shí)能夠生動(dòng)起來,從而突破零起點(diǎn)、高臺(tái)階的瓶頸。在完成本節(jié)的學(xué)習(xí)后,學(xué)生可以具有一定的結(jié)合數(shù)組和算法處理數(shù)據(jù)的能力。三、教學(xué)目標(biāo): 1、學(xué)會(huì)冒泡排序和選擇排序的思維方法。2、能夠熟練應(yīng)用冒泡排序算法進(jìn)行排序運(yùn)算,在討論的基礎(chǔ)上學(xué)會(huì)使用選擇排序算法解決同樣的問題。 3、在理解程序設(shè)計(jì)基本方法的基礎(chǔ)上,拓展其在現(xiàn)實(shí)中的作用。4、通

4、過程序設(shè)計(jì)和表演互動(dòng)的過程,激發(fā)學(xué)生在預(yù)測(cè)的基礎(chǔ)上追求結(jié)果的的成就感。四、教學(xué)重、難點(diǎn)項(xiàng) 目?jī)?nèi) 容解 決 措 施教學(xué)重點(diǎn)冒泡排序的基本原理通過表演設(shè)疑,展示結(jié)果,分析程序結(jié)構(gòu),探究動(dòng)作與程序關(guān)系,結(jié)合動(dòng)畫演示使抽象的原理變得具體形象以幫助學(xué)生掌握學(xué)習(xí)內(nèi)容 。教學(xué)難點(diǎn)五、教法、學(xué)法教法設(shè)計(jì):情境導(dǎo)入法、對(duì)比教學(xué)法、討論式教學(xué)法、分層教學(xué)法學(xué)法指導(dǎo):合作探究、自主學(xué)習(xí)、實(shí)踐操作 六、教學(xué)準(zhǔn)備1、教學(xué)環(huán)境:多媒體網(wǎng)絡(luò)機(jī)房。2、教學(xué)準(zhǔn)備:調(diào)試機(jī)房,制作課件,制作演示動(dòng)畫,程序調(diào)試,指導(dǎo)學(xué)生演練。3、學(xué)生分組:按照一貫的分組方式,組內(nèi)預(yù)習(xí)本節(jié)內(nèi)容。 七、教學(xué)過程教學(xué)環(huán)節(jié)主要教學(xué)活動(dòng)及過程教師活動(dòng)學(xué)生活動(dòng)

5、設(shè)計(jì)意圖(一)情景導(dǎo)入5分鐘排序規(guī)則:6名學(xué)生從左至右相鄰兩個(gè)學(xué)生比較手中牌的大小,如果前一個(gè)學(xué)生的牌比后一個(gè)學(xué)生的大,則兩人交換位置,直至不需要再移動(dòng),排好所有牌。排序表演:將 6張撲克牌隨機(jī)發(fā)給6名學(xué)生,他們先向臺(tái)下的學(xué)生展示一下自己手中的牌,然后轉(zhuǎn)過來背對(duì)學(xué)生。接到開始信號(hào)后,按規(guī)則排序。排好后,再次面向全體學(xué)生,此時(shí),學(xué)生手中的牌從左至右已按升序排好。思考: 如何用程序表達(dá)排序過程?本節(jié)課任務(wù):編寫程序完成排序過程。宣布表演規(guī)則。設(shè)疑。參與表演的學(xué)生快速比較、移動(dòng),完成表演過程。其他學(xué)生觀察并思考會(huì)產(chǎn)生什么結(jié)果。激發(fā)學(xué)生興趣與求知欲,在學(xué)生疑問中導(dǎo)入本節(jié)教學(xué)內(nèi)容。(二)新知新授15分鐘

6、交待:表演所遵循的排序規(guī)則,就是排序算法中冒泡排序的過程。通過討論,分解冒泡排序過程。1、如何存儲(chǔ)6個(gè)數(shù);int a6=7,10,6,5,9,8;創(chuàng)建一個(gè)數(shù)組用于存放六個(gè)操作數(shù)。2、如何實(shí)現(xiàn)兩個(gè)數(shù)互換;t=ai;ai=ai+1;ai+1=t;i代表數(shù)組元素位置;t是兩數(shù)交換所借助的第三變量。3、如何表達(dá)比較的趟數(shù)和每趟比較的次數(shù)? 在每趟比較中,還會(huì)進(jìn)行N次兩數(shù)的比較,可以使用循環(huán)嵌套的方法。外循環(huán)代表比較趟數(shù),內(nèi)循環(huán)表示每趟比較的次數(shù)。 首先確定外循環(huán)次數(shù),通過觀察剛才學(xué)生表演過程可知在整個(gè)過程中進(jìn)行了5趟排序,即外循環(huán)為5次。 然后確定內(nèi)循環(huán)次數(shù),仍然通過觀察表演過程可知:第1趟比較,兩兩

7、比較,4次;第2趟比較,兩兩比較,3次; 第3趟比較,兩兩比較,2次;第4趟比較,兩兩比較,1次;第5趟比較,兩兩比較,0次。因此,內(nèi)循環(huán)次數(shù)隨外循環(huán)次數(shù)增多而減少,整理成代碼為:for(j=0;j5;j+) for(i=0;i5-j;i+) 4.整理完整代碼#include main() int a6=7,10,6,5,9,8; int i,j,t; for(j=0;j5;j+) for(i=0;iai+1) t=ai;ai=ai+1;ai+1=t; printf( sorted numbers:n); for(i=0;i6;i+) printf(%d ,ai);與學(xué)生討論,分析冒泡排序過程

8、,將其分解為三個(gè)主要步驟,給出三個(gè)步驟解決方法。給出完整程序代碼。學(xué)生與教師共同討論,分析排序過程。 學(xué)生調(diào)試代碼并運(yùn)行。通過觀察得出結(jié)果。熟悉冒泡排序過程。同時(shí)鍛煉學(xué)生歸納總結(jié)能力。讓學(xué)生體會(huì)代碼運(yùn)行的過程及結(jié)果。(三)認(rèn) 知提 升15分 鐘1. 設(shè)置疑問遞進(jìn)思考(1)位置a.每次比較的兩數(shù)位置上有什么關(guān)系?(2)變化b.每趟排序后數(shù)列發(fā)生什么變化?(3)關(guān)系c.內(nèi)外循環(huán)的次數(shù)有什么關(guān)系?2.分層教學(xué)動(dòng)畫助學(xué)觀察動(dòng)畫演示冒泡排序?qū)?shù)列進(jìn)行升序排序的過程3.要點(diǎn)總結(jié)拎清特點(diǎn)(1)6個(gè)數(shù)進(jìn)行5趟加工,n個(gè)數(shù)要進(jìn)行n-1趟加工(2)每一趟比較次數(shù)越來越少(3)n個(gè)數(shù)第j趟加工時(shí),比較次數(shù)是(n-1

9、)-14.填流程圖理清思路5.探究實(shí)質(zhì)深入挖掘(1)內(nèi)循環(huán)次數(shù)不斷變少的原因?(2)為什么內(nèi)循環(huán)結(jié)束條件變化,開始條件不變?(3)你能為冒泡法起個(gè)新名字嗎?并說明起這個(gè)名字的理由。6.程序動(dòng)作預(yù)測(cè)結(jié)果截取程序片段,學(xué)生演示該片段所對(duì)應(yīng)動(dòng)作,預(yù)測(cè)這段代碼會(huì)產(chǎn)生怎樣效果。冒泡排序中是相鄰兩數(shù)比較,如果比較的不是相鄰兩數(shù),排序過程會(huì)怎樣呢?給出思考問題,并利用電子教室將演示動(dòng)畫發(fā)送給每個(gè)學(xué)生。 教師對(duì)原理特點(diǎn)進(jìn)行總結(jié)。給出冒泡排序流程圖,讓學(xué)生補(bǔ)充完整。提出深入問題。在此過程中,巡查學(xué)生討論情況,捕捉學(xué)生中存在的共性問題及時(shí)解決。選擇代碼片段。給出新規(guī)則,在學(xué)生指導(dǎo)下完成排序過程。學(xué)生在觀察動(dòng)畫演示

10、同時(shí)討論老師給出的思考問題。學(xué)生對(duì)比自己總結(jié)的答案。 學(xué)生組內(nèi)合作討論,完成流程圖填空。組內(nèi)討論教師提出的問題學(xué)生演示動(dòng)作。 討論,指導(dǎo)教師完成排序過程。由結(jié)果的表象進(jìn)一步向原理探索。動(dòng)畫演示使抽象過程變得生動(dòng)形象,有助于學(xué)生理解。幫助學(xué)生拎清程序結(jié)構(gòu),為整合代碼做準(zhǔn)備。深度探究原理細(xì)節(jié)。用程序指導(dǎo)動(dòng)作。 拓展學(xué)生發(fā)散思維的能力。(四)發(fā) 散思 維 15分 鐘同樣6個(gè)數(shù),同樣按升序排列,不同排序規(guī)則,中間會(huì)發(fā)生什么樣的變化?1、 新排序規(guī)則(選擇排序): 比較完所有的數(shù),將最小的數(shù)與第一個(gè)數(shù)調(diào)換位置,直到所有數(shù)排完。學(xué)生按照新規(guī)則指導(dǎo)教師進(jìn)行操作,完成6個(gè)數(shù)的排序過程2、 用動(dòng)畫分析原理過程動(dòng)

11、畫演示選擇排序?qū)@6個(gè)數(shù)整個(gè)排序過程。3、 討論分析進(jìn)行幾趟排序,每趟排序中的比較次數(shù) 5趟排序完成整個(gè)過程,每趟比較次數(shù)遞減。每趟排序后數(shù)列有什么變化 每趟排序后都有一個(gè)數(shù)的位置確定下來。每次比較的兩數(shù)位置的關(guān)系 兩數(shù)位置沒有固定關(guān)系。4、總結(jié)過程從n個(gè)數(shù)中選出最小數(shù),然后將最小數(shù)與第一個(gè)數(shù)交換位置;除第一個(gè)數(shù)外,其余n-1個(gè)數(shù)再按步驟1的方法選出次小的數(shù),與第2個(gè)數(shù)交換位置;重復(fù)步驟1(n-1)遍,最后形成遞增數(shù)列5、 編寫關(guān)鍵語句1如何存儲(chǔ)6個(gè)同數(shù);參考答案:int a6=7,10,6,5,9,8; 2如何確定最小值并與“第一個(gè)”數(shù)交換;參考答案:if (aminaj) min=j;(確

12、定最小值位置) temp=ai; ai=amin; amin=temp; 3如何表達(dá)比較的趟數(shù)和每趟比較的次數(shù)?參考答案:for (i=0;i=4;i+) for (j=i+1;j=5;j+) 給出思考問題,并利用電子教室將演示動(dòng)畫發(fā)送給每個(gè)學(xué)生??偨Y(jié)選擇排序執(zhí)行過程。與學(xué)生討論分析,找出過程中的關(guān)鍵步驟。讓學(xué)生合作編寫關(guān)鍵步驟的語句。學(xué)生在觀察動(dòng)畫演示同時(shí)討論老師給出的思考問題。學(xué)生與教師討論分析關(guān)鍵步驟,并合作完成關(guān)鍵步驟的語句。動(dòng)畫演示使抽象過程變得生動(dòng)形象,有助于學(xué)生理解。培養(yǎng)學(xué)生活學(xué)活用,變通思維能力(五)對(duì) 比討 論10分 鐘對(duì)比討論:讓學(xué)生分別觀察用兩種排序方法的排序過程,在此過

13、程中進(jìn)行組內(nèi)討論兩種方法的區(qū)別。然后完成表格。將表格發(fā)給學(xué)生,組織學(xué)生討論完成表格的填寫。學(xué)生討論并填寫表格。整理算法思路,比較算法區(qū)別。提升學(xué)生理論高度。(六)拓 展升 華20分 鐘習(xí)題一、有10個(gè)地區(qū)的面積,要求對(duì)它們按由大到小降序排列。1、 在Excel中寫出外循環(huán)次數(shù),及內(nèi)循環(huán)交換次數(shù)。并得出結(jié)論,排序后,兩兩之間的交換共進(jìn)行幾次。2、利用冒泡排序?qū)ι鲜鰯?shù)列進(jìn)行降序排列。 習(xí)題二、有10個(gè)重量不等的蘋果和一臺(tái)電子秤,每個(gè)蘋果重量未知,現(xiàn)在需要按重量從小到大排列這10個(gè)蘋果。說出你的方法,并嘗試完成這個(gè)過程。給出基礎(chǔ)習(xí)題和拓展創(chuàng)新習(xí)題。完成習(xí)題一,對(duì)習(xí)題二進(jìn)行研究討論,給出具體解決方案。 基礎(chǔ)練習(xí)。為學(xué)生提供創(chuàng)新思維平臺(tái)。(六)評(píng) 價(jià)總 結(jié)15分 鐘針對(duì)學(xué)生上傳的習(xí)題一答案, 采取匿名的方式,將錯(cuò)誤的答案拿出來共同探討。對(duì)于習(xí)題二小組間交流互換解決方案,取長(zhǎng)補(bǔ)短。最后完成小組合作學(xué)習(xí)材料,給出評(píng)價(jià)成績(jī)。學(xué)生總結(jié)本節(jié)課內(nèi)容,教師補(bǔ)充,并對(duì)各組表現(xiàn)給予評(píng)價(jià)。作業(yè)布置小組合作,尋找新的排序方式組織討論,把控全局。教師布置作業(yè)探討錯(cuò)誤答案,并交流習(xí)題二解決方案學(xué)生課后完成作業(yè)發(fā)現(xiàn)別人問題同時(shí)提醒自己。鍛煉學(xué)生交流表達(dá)能力。讓小組合作 課后也

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論