黃培泉
1.廣東青年職業(yè)學(xué)院計(jì)算機(jī)工程系,廣東省廣州市 510507
2.遼寧工程技術(shù)大學(xué)創(chuàng)新實(shí)踐學(xué)院,遼寧省阜新市 123000
C語言程序設(shè)計(jì)是國內(nèi)高等院校計(jì)算機(jī)專業(yè)的一門必修課,同時也是大部分院校非計(jì)算機(jī)專業(yè)學(xué)生程序設(shè)計(jì)基礎(chǔ)課程。其教學(xué)目的是讓學(xué)生掌握高級語言的基礎(chǔ)知識、編程技術(shù)和基本算法[1],能靈活運(yùn)用高級語言進(jìn)行程序設(shè)計(jì),具備利用計(jì)算機(jī)解決實(shí)際問題的能力,以培養(yǎng)學(xué)生嚴(yán)謹(jǐn)?shù)目茖W(xué)態(tài)度、理論聯(lián)系實(shí)際的實(shí)踐動手能力和創(chuàng)新能力[2]。
然而,從歷年C語言教學(xué)情況來看,特別是對于非計(jì)算機(jī)專業(yè)學(xué)生而言,C語言所涉及的概念、語法規(guī)則、應(yīng)用技巧等知識繁多且不容易掌握。在理論學(xué)時及實(shí)踐學(xué)時較少的情況下,既要掌握C語言的基本語法規(guī)則,又要掌握高難的算法知識及實(shí)踐編程技巧,實(shí)在是很艱難的工作。
多年調(diào)查分析發(fā)現(xiàn),目前C語言教學(xué)方法主要分為兩種,一種方法是:先對新知識進(jìn)行系統(tǒng)的講解并在計(jì)算機(jī)上進(jìn)行驗(yàn)證,然后舉例說明新知識的應(yīng)用,通過典型例子讓學(xué)生達(dá)到掌握知識的目的。這種教學(xué)方法適合推理邏輯特別強(qiáng)的課程,比如高等數(shù)學(xué)、大學(xué)物理等。對于C語言程序設(shè)計(jì)而言,特別是對于語法規(guī)則方面的掌握,這種方法會讓學(xué)生感到內(nèi)容枯燥、繁瑣,教師還沒有講到經(jīng)典實(shí)例學(xué)生已經(jīng)失去了耐心,當(dāng)然對新知識的掌握及應(yīng)用方面效果很差。如果每次課都如此,學(xué)生將失去學(xué)習(xí)的興趣,前面的知識沒有掌握,新知識又無法進(jìn)行學(xué)習(xí),導(dǎo)致惡性循環(huán),后果不堪設(shè)想。另一種方法是案例教學(xué)方法,即先講授典型案例,讓學(xué)生先看到成果,然后再對案例中所涉及的知識進(jìn)行解釋、歸納與總結(jié)。這種授課方法在一定程度上提供學(xué)生的學(xué)習(xí)興趣及積極性,但這種方法所采用的案例相對來說與實(shí)際生活太遙遠(yuǎn),并且案例之間沒有任何相關(guān),缺乏知識連續(xù)性。
針對上面的問題,本文提出了新的教學(xué)模式,即“漸進(jìn)體驗(yàn)教學(xué)模式”。強(qiáng)調(diào)學(xué)生逐步的、由淺入深的知識體系體驗(yàn);強(qiáng)調(diào)對實(shí)際項(xiàng)目設(shè)計(jì)與開發(fā)的體驗(yàn)過程;強(qiáng)調(diào)對C語言語法規(guī)則及程序設(shè)計(jì)思想之間相互關(guān)聯(lián)的體驗(yàn)。
在不改變教學(xué)大綱的基礎(chǔ)上,將教學(xué)內(nèi)容重新組織,內(nèi)容的講授不再是教材內(nèi)容的陳述,而是對生活中常見的事物進(jìn)行剖析,比如:銀行“ATM自動取款機(jī)”、“個人通訊錄”、“學(xué)生成績管理系統(tǒng)”等。將一個實(shí)實(shí)在在的系統(tǒng)按功能進(jìn)行劃分,由淺入深,一步一步地去完成系統(tǒng)的設(shè)計(jì)與開發(fā)。在整個系統(tǒng)開發(fā)過程中,每完成一個功能都將向?qū)W生講授相關(guān)知識點(diǎn),而且某些重要的知識點(diǎn)將在多個模塊中重現(xiàn),這也使得一些重要的知識點(diǎn)得到鞏固。學(xué)生在學(xué)完整個系統(tǒng)開發(fā)相關(guān)知識之后,也把教學(xué)大綱中要求的知識點(diǎn)學(xué)完,而且還將學(xué)習(xí)到軟件開發(fā)的基本過程及基本原理,提高了學(xué)生的認(rèn)知能力、拓寬了學(xué)生的知識面、同時在掌握C語言基本語法規(guī)則的基礎(chǔ)上,學(xué)會了程序設(shè)計(jì)的思想,為學(xué)生以后的學(xué)習(xí)打下了堅(jiān)實(shí)的基礎(chǔ)。
教學(xué)內(nèi)容不再遵循傳統(tǒng)教材內(nèi)容組織方式,而是根據(jù)實(shí)踐項(xiàng)目設(shè)計(jì)模塊重新組織,不同的模塊將使用多個知識點(diǎn)實(shí)現(xiàn),這些知識點(diǎn)包括新知識點(diǎn),也包括已學(xué)習(xí)的舊知識點(diǎn)。這樣既達(dá)到學(xué)習(xí)新知識點(diǎn)的目的,同時又復(fù)習(xí)了舊知識點(diǎn),實(shí)現(xiàn)知識鞏固。部分教學(xué)內(nèi)容組織如下:
(1)用戶界面設(shè)計(jì)實(shí)現(xiàn)
用控制臺應(yīng)用程序?qū)崿F(xiàn)用戶登錄界面,在此模塊中主要講解用Visual C++編程環(huán)境建立項(xiàng)目,編寫C語言程序等工作。使用基本輸入輸出語句實(shí)現(xiàn)簡單的用戶界面。本模塊將完成基本輸入輸出教學(xué)任務(wù)及系統(tǒng)函數(shù)調(diào)用知識。
(2)單用戶信息驗(yàn)證
本模塊將實(shí)現(xiàn)單用戶信息存儲,包括用戶賬號、密碼的存儲,實(shí)現(xiàn)簡單用戶登錄驗(yàn)證過程。本模塊完成基本數(shù)據(jù)類型及if簡單語句應(yīng)用的講解。
(3)用戶簡單操作選擇功能實(shí)現(xiàn)
本模塊將實(shí)現(xiàn)用戶選擇功能,包括輸入學(xué)生課程成績、查詢課程成績、修改課程成績、刪除課程成績、退出系統(tǒng)等基本操作功能。本模塊完成if語句、if嵌套、switch語句、break語句、函數(shù)等方面的講解。
(4)添加成績、查詢成績、修改成績功能實(shí)現(xiàn)
本模塊實(shí)現(xiàn)添加、查詢及修改某位學(xué)生多門課程成績功能。主要涉及知識點(diǎn)包括算術(shù)元素、if條件判斷、文件讀寫等知識。
(5)用戶循環(huán)操作選擇功能實(shí)現(xiàn)
本模塊實(shí)現(xiàn)用戶一次登錄需要完成多項(xiàng)操作功能,主要涉及知識點(diǎn)包括循環(huán)程序設(shè)計(jì)知識。
(6)多名學(xué)生多門課程成績存儲功能實(shí)現(xiàn)
多名學(xué)生多門課程成績管理功能將涉及存儲信息比較多,為方便管理將同類型的使用數(shù)組存儲,更合理的管理方法是使用結(jié)構(gòu)體存儲數(shù)據(jù)。本模塊將學(xué)習(xí)數(shù)組、結(jié)構(gòu)體等知識。
(7)課程成績排名查詢
將某門課程成績從大到小,或者按學(xué)生的總成績或平均成績進(jìn)行排序是一些頻率很高的操作。本模塊將實(shí)現(xiàn)數(shù)據(jù)排序等基本知識。
在教學(xué)中,要實(shí)現(xiàn)學(xué)生牢固掌握各種新知識,僅使用一種教學(xué)手段顯得捉襟見肘。圍繞本教學(xué)模式,為整個教學(xué)體系專門設(shè)計(jì)了各種輔助教學(xué)手段,包括:
(1)教學(xué)資源網(wǎng)站開發(fā)
教師在課堂上的授課知識必定是有限的,不僅在廣度上還是在深度拓展方面,都有所限制,學(xué)生在課堂上也不能100%的集中精力進(jìn)行學(xué)習(xí)。那么課外知識獲取對學(xué)生而言至關(guān)重要,為方面學(xué)生學(xué)習(xí),本教學(xué)體系專門設(shè)計(jì)了教學(xué)輔助網(wǎng)站,為學(xué)生提供教學(xué)課件、電子教材、經(jīng)典案例、疑難問題解答等教學(xué)資源。
(2)漸進(jìn)考核系統(tǒng)的研發(fā)
在整個教學(xué)及實(shí)踐環(huán)節(jié)當(dāng)中,為了衡量學(xué)生對教學(xué)大綱及實(shí)驗(yàn)大綱掌握程度,在實(shí)踐過程中利用“漸進(jìn)體驗(yàn)考核系統(tǒng)”對學(xué)生所掌握的知識進(jìn)行測試,并達(dá)到鞏固知識的目的,同時也根據(jù)學(xué)生的測驗(yàn)結(jié)果進(jìn)行分析,及時對教學(xué)計(jì)劃進(jìn)行微調(diào),讓教師的授課知識更能適應(yīng)學(xué)生當(dāng)前的學(xué)習(xí)進(jìn)度及學(xué)習(xí)狀態(tài),解決一些不可預(yù)知的問題,同時也是理論教學(xué)的內(nèi)容補(bǔ)充。
(3)引導(dǎo)學(xué)生參加計(jì)算機(jī)競賽
知識的掌握程度需要通過實(shí)際的驗(yàn)證方能體現(xiàn)價值,能將學(xué)習(xí)到的知識迅速應(yīng)用用到實(shí)際當(dāng)中,這是“漸進(jìn)體驗(yàn)教學(xué)模式”的終極目標(biāo)。在學(xué)生學(xué)完該課程之后,理論上可以使用C語言進(jìn)行一些系統(tǒng)開發(fā)或其他一些實(shí)踐活動,其中,引導(dǎo)學(xué)生參加計(jì)算機(jī)競賽是一個很好的手段。課程結(jié)束之后,從教學(xué)改革班級中挑選多名C語言優(yōu)秀的學(xué)生參與“全國電腦鼠走迷宮競賽”當(dāng)中,分別獲得遼寧省賽區(qū)一等獎、二等獎、全國三等獎的佳績。通過競賽,學(xué)生既學(xué)到了課堂上學(xué)不到的知識,同時也使學(xué)生獲得一些個人榮譽(yù),增強(qiáng)學(xué)生的動手能力、自信心及成就感。
選擇4個班級進(jìn)行教學(xué)改革試驗(yàn),每兩個班為一組改革對象。理論授課學(xué)時為48學(xué)時,實(shí)驗(yàn)學(xué)時為32學(xué)時,共80學(xué)時,與其他班級的學(xué)時一樣。教學(xué)大綱不變,在授課方式、內(nèi)容組織上有較大的變化,內(nèi)容的講解不再是教材內(nèi)容的再現(xiàn),而是通過實(shí)際項(xiàng)目的演示,讓學(xué)生對其中所涉及的知識進(jìn)行理解及掌握。在課堂上,對于個別典型的問題進(jìn)行分組討論,讓同學(xué)之間有交流的機(jī)會,在交流當(dāng)中發(fā)現(xiàn)問題、了解他人的絕妙想法、解決實(shí)際問題;在實(shí)驗(yàn)教學(xué)環(huán)節(jié),學(xué)生首先需要對課堂上教師的授課內(nèi)容進(jìn)行掌握,然后再實(shí)現(xiàn)教師安排的實(shí)驗(yàn),實(shí)現(xiàn)對新知識的鞏固??紤]到期末考試的實(shí)際情況,每兩次實(shí)驗(yàn)之后,學(xué)生將利用30分鐘的時間完成“漸進(jìn)考核系統(tǒng)”的里面的題目,以此來檢查學(xué)生對教學(xué)大綱所要求的知識掌握程度。
本研究在C語言教學(xué)方法、實(shí)驗(yàn)方法及教學(xué)內(nèi)容組織上做出了重大的改革,整個改革注重學(xué)生的體驗(yàn)、注重學(xué)生的動手能力及創(chuàng)新思維模式的培養(yǎng)。讓學(xué)生真正地、由淺入深地體驗(yàn)實(shí)際項(xiàng)目開發(fā)過程,并讓學(xué)生自己動手實(shí)踐,將所學(xué)的知識快速的應(yīng)用到實(shí)踐當(dāng)中。
參與本次教學(xué)改革試驗(yàn)的學(xué)生一共118名學(xué)生,全部為非計(jì)算機(jī)專業(yè)學(xué)生,在期末考核中,優(yōu)良成績?nèi)藬?shù)48人、中等成績?nèi)藬?shù)30人、及格人數(shù)13人、不及格人數(shù)17人,統(tǒng)計(jì)圖表見圖1。
從學(xué)生成績統(tǒng)計(jì)分析來看,學(xué)生優(yōu)良率較高,達(dá)到44%,不及格率15%,在全校學(xué)生不及格率達(dá)到30%的情況下,這種不及格率就顯得很低了。
圖1 學(xué)生期末成績統(tǒng)計(jì)圖
課程結(jié)束后,引導(dǎo)多名學(xué)生參加了“2010全國電腦鼠走迷宮競賽”,“2011年國信藍(lán)點(diǎn)杯程序設(shè)計(jì)大賽”并取得了優(yōu)異的成績,“電腦鼠走迷宮競賽”獲得遼寧省賽區(qū)一等獎一項(xiàng)及二等獎一項(xiàng),全國三等獎等一項(xiàng);“國信藍(lán)點(diǎn)杯競賽”獲得遼寧省一等獎一項(xiàng)。結(jié)果表明:本課題研究涉及的各個環(huán)節(jié)都具有科學(xué)合理性、針對性強(qiáng)、具有可操作性,取得了比較明顯的效果。通過“漸進(jìn)體驗(yàn)教學(xué)模式”,提高了學(xué)生的學(xué)習(xí)興趣及積極性,提高了學(xué)生的動手能力、自信心及成就感,消除畏懼心理;提高了學(xué)生的團(tuán)隊(duì)合作精神,磨煉了學(xué)生堅(jiān)強(qiáng)的意志力及刻苦耐勞精神,培養(yǎng)培養(yǎng)了學(xué)生的創(chuàng)新思維能力,同時也拓展了學(xué)生的知識面,為以后的學(xué)習(xí)打下了堅(jiān)實(shí)的鋪墊。
當(dāng)然,作為第一次應(yīng)用該體驗(yàn)教學(xué)模式,也存在多方面的問題,比如:如何解決“惰性”學(xué)生的學(xué)習(xí)狀態(tài)、教學(xué)內(nèi)容與教材之間的脫節(jié)問題、實(shí)踐學(xué)時過少問題等。我們研究小組在以后的研究中將針對性地去解決相關(guān)問題,不斷為C語言的教學(xué)摸索一種科學(xué)、合理、實(shí)際可行的教學(xué)模式。
[1]付宏東.形勢與政策課教學(xué)探索[J].繼續(xù)教育研究,2009(4):152-154
[2]薛琴.任務(wù)驅(qū)動法在C語言教學(xué)中的應(yīng)用[J].科技資訊,2009(26):198-200