亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于C語言的排序算法在五年制高職課堂中的應(yīng)用

        2014-11-26 05:43:02歐陽麗娜
        鎮(zhèn)江高專學(xué)報 2014年3期
        關(guān)鍵詞:程序設(shè)計排序算法

        歐陽麗娜

        (江蘇聯(lián)合職業(yè)技術(shù)學(xué)院鎮(zhèn)江分院信息工程系,江蘇鎮(zhèn)江 212016)

        計算機的本質(zhì)是“程序的機器”,程序和指令是計算機系統(tǒng)中最基本的概念。進行程序設(shè)計必須以一種計算機語言為工具,否則,只能是紙上談兵。作為當(dāng)前大多數(shù)學(xué)校計算機專業(yè)入門級語言的C語言功能豐富,表達(dá)能力強,使用靈活方便,應(yīng)用面廣,目標(biāo)程序效率高,可移植性好,既具有高級語言的優(yōu)點,又具有低級語言的許多特點,既適合編寫系統(tǒng)軟件,又適合編寫應(yīng)用軟件。C語言是計算機專業(yè)的必修課,也是程序開發(fā)的前導(dǎo)課。對于學(xué)習(xí)者而言,要進行程序設(shè)計,必須解決以下兩個問題:

        1)解決問題的思路和方法,即算法。

        2)算法的實現(xiàn),即用計算機語言編寫程序,達(dá)到用計算機解決問題的目的。

        算法被稱為程序的靈魂。著名的計算機科學(xué)家沃思(Nikiklaus Wirth)提出一個公式,即

        由此可見,算法在程序設(shè)計中的重要性。

        排序算法中的冒泡排序和選擇排序相對簡單,有利于初學(xué)者循序漸進的學(xué)習(xí)。對于剛剛接觸程序設(shè)計的學(xué)生來講,從這兩種算法開始是非常不錯的選擇。

        1 教學(xué)對象

        1)理論基礎(chǔ)薄弱,在程序設(shè)計方面大多是零基礎(chǔ)。C語言是在五年制高職計算機軟件專業(yè)低年級開設(shè)的一門必修課,授課對象是初中畢業(yè)生。在此之前,這些學(xué)生大都沒有接觸過程序設(shè)計,甚至不知道什么是程序設(shè)計,這為教學(xué)工作帶來了很大的阻力。

        2)自信心強,又具有極強的好奇心與求知欲,喜歡運手操作,但抽象思維和自主學(xué)習(xí)能力相對薄弱,厭煩枯燥的文字講解。在教學(xué)過程中,教師要盡量使用簡單、直觀的演示方式,使抽象的程序設(shè)計過程形象、生動起來。

        3)層次不一,學(xué)習(xí)能力存在很大的差異。教師要根據(jù)學(xué)生的特點采用分層教學(xué)的方法,以滿足不同學(xué)生的需求,并教會學(xué)生自主學(xué)習(xí),突破零起點、高臺階的瓶頸。

        2 依據(jù)內(nèi)容確立目標(biāo)

        2.1 教學(xué)內(nèi)容

        數(shù)組[1]是C語言中重要的數(shù)據(jù)類型,通過數(shù)組可以進行數(shù)據(jù)的排序運算。排序算法是一種基本算法,而冒泡排序和選擇排序是排序算法中的基礎(chǔ)知識,學(xué)生接觸算法也是從它們開始的。讓學(xué)生熟練掌握這兩種算法很有必要,可以為培養(yǎng)學(xué)生的程序設(shè)計能力打下良好的基礎(chǔ)。

        2.2 教學(xué)目標(biāo)

        教學(xué)目標(biāo)是一種在教學(xué)活動之前預(yù)期的學(xué)生學(xué)習(xí)結(jié)果,即教師預(yù)先設(shè)定學(xué)生在完成某一課題的學(xué)習(xí)后應(yīng)達(dá)到的標(biāo)準(zhǔn)。教學(xué)目標(biāo)的確定是否全面、準(zhǔn)確、具體、切合實際,對課堂教學(xué)至關(guān)重要。確定教學(xué)目標(biāo)的依據(jù)是課程標(biāo)準(zhǔn)、教材和學(xué)情,三者缺一不可。在擬定教學(xué)目標(biāo)的過程中,必須“隱”“顯”兼顧,“近”“遠(yuǎn)”結(jié)合,使教學(xué)目標(biāo)具有科學(xué)性、全面性、準(zhǔn)確性和針對性。

        根據(jù)課程標(biāo)準(zhǔn)、冒泡排序和選擇排序的教學(xué)內(nèi)容與特點,同時考慮到五年制高職學(xué)生的學(xué)情,確定教學(xué)目標(biāo):

        1)理解冒泡排序和選擇排序的基本原理,能夠熟練應(yīng)用冒泡排序算法進行運算,學(xué)會使用選擇排序算法解決同樣問題。

        2)在理解程序設(shè)計基本方法的基礎(chǔ)上,拓展其在現(xiàn)實中的應(yīng)用,并通過程序設(shè)計,激發(fā)學(xué)生在預(yù)測基礎(chǔ)上追求結(jié)果的成就感。

        3 多種方法,創(chuàng)新教學(xué)

        教學(xué)方法是多種多樣的。每種方法都有其獨特的作用和一定的適用范圍。教學(xué)方法的選擇受教學(xué)目標(biāo)、教學(xué)內(nèi)容、教師特點、學(xué)生的年齡特征和知識基礎(chǔ)等因素的影響。在教學(xué)過程中,筆者以任務(wù)驅(qū)動教學(xué)法為主,結(jié)合使用情境導(dǎo)入、小組合作、分層教學(xué)的方法。其中小組合作教學(xué)法的關(guān)鍵在于分組,分組的前提條件是摸清學(xué)生目前的知識結(jié)構(gòu),按照組間同質(zhì)、組內(nèi)異質(zhì)的原則進行分組[2]。

        3.1 情境導(dǎo)入

        皮亞杰曾說:“所有智力方面的工作者,都依賴于興趣”。為了讓學(xué)生對抽象的C語言產(chǎn)生學(xué)習(xí)興趣,可以嘗試將對新知識的探索融入游戲等生活情境中。通過游戲設(shè)疑,展示結(jié)果,分析程序結(jié)構(gòu),并結(jié)合動畫演示,使抽象的原理變得具體形象,一定能取得事半功倍的效果。

        例如,以排序游戲作為教學(xué)過程的開始。首先,宣布游戲規(guī)則,即冒泡排序的原理的實際運用。然后,讓學(xué)生代表按照游戲規(guī)則對手中撲克牌進行排序,如升序。排序結(jié)束后,組織其他學(xué)生觀察撲克牌的順序變化。結(jié)果顯示,撲克牌已經(jīng)由亂序變?yōu)樯?。在此設(shè)疑,為什么經(jīng)過這樣的過程會產(chǎn)生這樣的結(jié)果呢?如果利用程序語言該怎樣完成這一任務(wù)呢?學(xué)生知道游戲規(guī)則,但是不知道為什么要制定這種規(guī)則。學(xué)生在“只知其一,不知其二”的情況下進行游戲,在教師的提問中思考,充分激發(fā)了學(xué)習(xí)興趣。

        3.2 講授新知

        萬丈高樓平地起,學(xué)生循序漸進地接受新知的過程是打牢基礎(chǔ)的過程,是非常重要的環(huán)節(jié)。在觀察整個排序過程后總結(jié)規(guī)律,得出冒泡排序的基本理念。由表及里,為深入理解后面的原理做好鋪墊。接著,梳理過程,挑揀出關(guān)鍵步驟。然后,舊知新用,利用之前學(xué)習(xí)過的知識,根據(jù)關(guān)鍵步驟編寫關(guān)鍵語句,意在幫助學(xué)生循序漸進地完成代碼編寫過程。趁熱打鐵,進行語句整合,利用程序語言完成排序任務(wù)。

        3.3 認(rèn)知提升

        學(xué)生初步理解算法理念之后,層層遞進,帶領(lǐng)學(xué)生透過表象,探索原理,進一步提高他們對算法的認(rèn)知程度。

        1)設(shè)置疑問,遞進思考。從元素位置、順序變化、內(nèi)外循環(huán)關(guān)系等方面引導(dǎo)學(xué)生展開組內(nèi)討論,初步理解冒泡排序原理。

        2)分層教學(xué),動畫助學(xué)。學(xué)生根據(jù)自身情況借助動畫演示理解程序過程。

        3)要點總結(jié),拎清特點。逐層深入,總結(jié)冒泡排序原理的特點,幫助學(xué)生進一步理解冒泡排序原理的結(jié)構(gòu)。

        4)填流程圖,理清思路。通過動畫演示,總結(jié)算法特點,組內(nèi)討論,補充流程圖,幫助學(xué)生理清思路,了解程序結(jié)構(gòu)。

        5)探究實質(zhì),深入挖掘。學(xué)生進行小組討論,深層次探討算法實質(zhì)。教師巡視并參與到討論中,發(fā)現(xiàn)問題及時解決,共性問題集中解決。

        6)程序動作,預(yù)測效果。讓學(xué)生設(shè)計程序并演示程序片段、預(yù)測結(jié)果,培養(yǎng)學(xué)生由抽象向具體轉(zhuǎn)換的能力。

        3.4 發(fā)散思維

        發(fā)散思維(Divergent Thinking),又稱為擴散思維或求異思維,表現(xiàn)為思維視野廣闊,呈現(xiàn)多維發(fā)散狀,包括“一題多解”“一事多寫”“一物多用”等方式[3]。

        引導(dǎo)學(xué)生學(xué)習(xí)選擇排序。具體過程,相對于同樣的數(shù)列,給出不同的排序規(guī)則。學(xué)生根據(jù)新規(guī)則和選擇排序的演示動畫,初步自學(xué)選擇排序,完成排序過程。通過觀察、比較、討論,幫助學(xué)生進一步理解選擇排序的過程,為編寫關(guān)鍵語句做好鋪墊。最后,找出關(guān)鍵步驟,將原理轉(zhuǎn)化為程序語言。同時,針對同一問題尋求多種解決方案,培養(yǎng)學(xué)生的發(fā)散思維能力。

        3.5 對比討論

        對比教學(xué)是指在教學(xué)活動中將兩個或兩個以上的認(rèn)識對象放在一定的條件下,按照同一標(biāo)準(zhǔn)進行對照、比較,從而確定認(rèn)識對象屬性的異同、作用的大小、性能的優(yōu)劣、問題的難易或認(rèn)識的正誤深淺,以達(dá)到辨識、了解和把握認(rèn)識對象之目的的一種方法。對比教學(xué)法是常用的教學(xué)方法之一,使用范圍非常廣。如利用動畫演示分別使用冒泡排序和選擇排序?qū)ν唤M數(shù)列進行排序運算的過程,通過填寫表格的形式對比出兩種方法在算法和代碼方面的區(qū)別,可以幫助學(xué)生深入理解兩種算法的原理,并且通過比較兩種排序方法的執(zhí)行代碼,加深對代碼的理解和記憶。

        3.6 拓展提升

        學(xué)生的接受能力和理解能力有很大差異,可以進行分層教學(xué),利用不同層次的習(xí)題鞏固理論知識,加深學(xué)生對算法的理解。設(shè)置基礎(chǔ)任務(wù)和拓展創(chuàng)新任務(wù),為學(xué)生提供創(chuàng)新思維平臺,讓學(xué)生不必拘于一種思維方式,鍛煉創(chuàng)新思維能力[4-5]。如任務(wù)可以設(shè)置為:

        1)基礎(chǔ)任務(wù)——按由大到小的順序排列10個地區(qū)的面積??紤]比較過程中外循環(huán)次數(shù)、內(nèi)循環(huán)交換次數(shù),排序后兩兩之間的交換次數(shù)。如利用冒泡排序?qū)ι鲜鰯?shù)列進行降序排列。

        2)拓展創(chuàng)新任務(wù)——有10個質(zhì)量未知且不等的蘋果和一臺電子秤,用你的方法,按質(zhì)量從小到大的順序排列這10個蘋果,并嘗試完成這個過程。

        3.7 交流總結(jié)

        學(xué)生通過交流總結(jié),及時修正練習(xí)題解答中的不足之處,強化學(xué)習(xí)效果,培養(yǎng)分析問題、解決問題的能力和交流能力,學(xué)會傾聽他人意見。具體操作過程如下:

        1)針對學(xué)生上傳的“習(xí)題一”答案,采取匿名的方式,將錯誤的答案拿出來共同探討。

        2)“習(xí)題二”部分,小組間交流互換思路,取長補短。

        3)完成課堂效果驗收評價表。

        4)學(xué)生總結(jié)本節(jié)課的收獲,教師補充,并對各組表現(xiàn)給予評價[6]。

        4 結(jié)束語

        讀懂課程內(nèi)容,做到“遠(yuǎn)”“近”兼顧,“隱”“顯”結(jié)合;讀懂學(xué)生,遵循學(xué)生由具體—抽象—具體的認(rèn)知活動規(guī)律,確定目標(biāo),多種教學(xué)手段相結(jié)合,為學(xué)生提供拓展創(chuàng)新思維的平臺,可以激發(fā)學(xué)生的學(xué)習(xí)興趣,使他們主動探索、接受、消化知識,更好地完成教學(xué)任務(wù),并為今后的學(xué)習(xí)打下堅實的基礎(chǔ)。

        [1]譚浩強.C程序設(shè)計[M].北京:清華大學(xué)出版社,2010:142-146.

        [2]陳寶芬.小組合作教學(xué)法在高職計算機實踐教學(xué)中的應(yīng)用:如何進行分組[J].內(nèi)蒙古石油化工,2011,37(24):112-113.

        [3]姚小兵.高職院校計算機教育創(chuàng)新的探索[J].科技情報開發(fā)與經(jīng)濟,2007,17(22):253-254.

        [4]熊治榮.任務(wù)驅(qū)動法在程序設(shè)計教學(xué)中的應(yīng)用[J].硅谷,2009(12):157.

        [5]戎小群.高職軟件技術(shù)專業(yè)課程體系目標(biāo)的創(chuàng)設(shè)[J].教育與職業(yè),2010(35):136-137.

        [6]謝翠萍,陳家益.C語言中冒泡排序教學(xué)設(shè)計與分析[J].福建電腦,2013(5):50-51.

        猜你喜歡
        程序設(shè)計排序算法
        排序不等式
        基于Visual Studio Code的C語言程序設(shè)計實踐教學(xué)探索
        計算機教育(2020年5期)2020-07-24 08:52:56
        恐怖排序
        基于MapReduce的改進Eclat算法
        Travellng thg World Full—time for Rree
        從細(xì)節(jié)入手,談PLC程序設(shè)計技巧
        電子制作(2019年9期)2019-05-30 09:42:04
        節(jié)日排序
        進位加法的兩種算法
        刻舟求劍
        兒童繪本(2018年5期)2018-04-12 16:45:32
        高職高專院校C語言程序設(shè)計教學(xué)改革探索
        亚洲 暴爽 av人人爽日日碰| 黑人一区二区三区在线| 国产自拍伦理在线观看| 国产精品高清免费在线| 久久国产精品一区二区三区| 亚洲综合国产一区二区三区| 香蕉视频一级| 国产av区亚洲av毛片| 国产让女高潮的av毛片| 欧美亚洲色综久久精品国产| 亚洲精品久久无码av片软件| 麻豆AV免费网站| 久久久成人av毛片免费观看| 丰满少妇按摩被扣逼高潮| 国产二区交换配乱婬| 国产精品igao视频网| 久久久窝窝午夜精品| 日本一区二区视频免费观看| 人妻少妇精品视频一区二区三区l| 中文字幕久久熟女蜜桃| 洗澡被公强奷30分钟视频| 亚洲av影院一区二区三区四区| 日韩一区二区av伦理| 国产成人精品亚洲日本在线观看| 精品日产卡一卡二卡国色天香 | 亚洲成av人片在线观看| 男女性高爱潮免费网站| 久久99精品久久久66| 亚洲精品在线观看一区二区| 东北女人一级内射黄片| 鲁鲁鲁爽爽爽在线视频观看| 欧洲日韩视频二区在线| 中文字幕日本韩国精品免费观看 | 成全视频高清免费| 一本色道久久综合亚洲精品蜜臀| 亚洲高清国产一区二区| 男人和女人做爽爽免费视频| 国产午夜无码视频免费网站| 国产av综合一区二区三区最新| 国产自拍av在线观看| а√天堂资源官网在线资源|