李瑋,李紅曉
摘要:C語言程序設(shè)計是信息管理與信息系統(tǒng)專業(yè)一門必修的專業(yè)基礎(chǔ)課,作為入門級程序設(shè)計語言,對學(xué)生后續(xù)的程序設(shè)計、數(shù)據(jù)結(jié)構(gòu)等課程有很大的影響。對于非計算機專業(yè)的學(xué)生,如何更好地提高學(xué)生的學(xué)習(xí)興趣,既能讓學(xué)生掌握程序設(shè)計的基本思想,又不會因為太枯燥打擊學(xué)生的學(xué)習(xí)積極性和學(xué)習(xí)興趣,本文進行了探索研究,提出一些改革方案和措施。
關(guān)鍵詞:C語言;教學(xué)改革;任務(wù)驅(qū)動
中圖分類號:G642.0???? 文獻標志碼:A???? 文章編號:1674-9324(2014)41-0140-03
作為醫(yī)學(xué)院校的學(xué)生,學(xué)習(xí)程序設(shè)計的首要目的,并不是單純學(xué)習(xí)一門編程語言,更重要的是提高學(xué)生使用計算機解決實際問題的能力。學(xué)生學(xué)到的不單純是程序設(shè)計語言本身,更主要的是遇到實際問題時,能夠用嚴謹?shù)倪壿嬎季S分析問題,利用計算機解決問題的能力。所以我們對醫(yī)學(xué)院校學(xué)生講授這門課的時候,所有的邏輯主線都以分析、解決實際問題而展開,C語言本身的數(shù)據(jù)結(jié)構(gòu)、語法等都是圍繞這個中心展開。
一、教學(xué)中存在的問題
C語言本身數(shù)據(jù)結(jié)構(gòu)相對簡單,語法結(jié)構(gòu)清晰,便于算法的描述。再加上編譯環(huán)境相對簡單,學(xué)生可以把更多時間放在程序設(shè)計的方法上,所以大多數(shù)學(xué)校都把C語言作為入門程序設(shè)計語言。目前我校的C語言課程針對醫(yī)藥管理學(xué)院信息管理與信息系統(tǒng)專業(yè)大一第二學(xué)期開設(shè),大多數(shù)學(xué)生剛開始接觸程序設(shè)計。由于C語言本身專業(yè)性很強,概念抽象難懂,學(xué)生普遍認為難度大,無從下手,學(xué)習(xí)積極性越來越差,逐漸失去興趣,對后續(xù)的其他程序設(shè)計課程的學(xué)習(xí)影響很大。究其原因,筆者認為有以下幾點。
1.學(xué)習(xí)目的不明確,在以往的教學(xué)中,有的學(xué)生覺得自己以后不會從事程序設(shè)計方面的工作,學(xué)習(xí)這個課沒有什么意義;即使是對程序設(shè)計感興趣的學(xué)生也會感覺C語言是上個世紀70年代的產(chǎn)物,我們還在學(xué)習(xí)這門課程太落后。這些學(xué)生上課、實驗不認真預(yù)習(xí),課后不總結(jié),學(xué)習(xí)效果自然不好。
2.教師授課重點不正確。在以往的教學(xué)中我們一直沿用傳統(tǒng)的授課模式,教師課堂講授和學(xué)生上機操作相結(jié)合。上課的時候老師按照書上的章節(jié)授課,實驗時,老師輔導(dǎo)學(xué)生進行調(diào)試。這樣的授課方式效果并不好,上課的時候,學(xué)生好像是都學(xué)會了,但上機實驗的時候會發(fā)現(xiàn),學(xué)生面對實際問題顯得無從下手,不知所措。出現(xiàn)這種局面,最主要的原因就是我們?nèi)粘5慕虒W(xué)過程大都是按照程序設(shè)計語言自身的體系結(jié)構(gòu)為脈絡(luò)展開的,使用的教材也一直沿用譚浩強的《C程序設(shè)計》模式,按照數(shù)據(jù)結(jié)構(gòu)、順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)等章節(jié)展開,看起來也是由簡單到復(fù)雜,符合人的認知規(guī)律。這樣的教學(xué)模式太注重C語言本身的語法和細節(jié),忽視了對學(xué)生程序設(shè)計思想的引導(dǎo)。上課的時候,教師一方面為了完成教學(xué)任務(wù),另一方面為了讓學(xué)生應(yīng)付各種考試,所以盡可能地多向?qū)W生灌輸C語言知識點,學(xué)生始終處在被動接收的狀態(tài),即便是掌握了老師上課時候所講的內(nèi)容,都是分散的知識點,遇到實際問題,無法用學(xué)到的知識來分析解決。對于非計算機專業(yè)的學(xué)生來說,即使以后從事程序設(shè)計的可能性不大,但是現(xiàn)在計算機已經(jīng)覆蓋到了社會的各個層面,學(xué)會如何運用計算機思維去分析問題、解決問題是一項必不可少的技能。
二、C程序設(shè)計教學(xué)方案改革思想
鑒于教學(xué)中出現(xiàn)的許多問題,我們提出以下教學(xué)改革思想。
1.引入“項目引導(dǎo)、任務(wù)驅(qū)動”的理念,激發(fā)學(xué)生興趣。“項目引導(dǎo)”是將實踐項目貫穿于教學(xué)的始終,用項目和任務(wù)進行新知識的引入,激發(fā)學(xué)生學(xué)習(xí)動力;“任務(wù)驅(qū)動”是在教學(xué)過程中,根據(jù)項目總體要求,以完成一個個具體的任務(wù)為線索,把教學(xué)內(nèi)容巧妙地隱含在每個任務(wù)之中,讓學(xué)生自己提出問題,并經(jīng)過思考和老師的點撥,自己解決問題。在學(xué)期開始,首先要選取幾個趣味性強或者和他們生活息息相關(guān)的幾個項目給學(xué)生展示,讓學(xué)生充分了解程序設(shè)計的神秘,激發(fā)學(xué)生興趣。告訴學(xué)生這幾個項目將會在以后的學(xué)習(xí)過程中,一直貫穿始終,到學(xué)期末的時候,自己將可以主宰程序的運轉(zhuǎn)。把這些項目拆分成為若干任務(wù),就是每節(jié)課他們需要學(xué)習(xí)的知識點。學(xué)生的每節(jié)課、每個實驗都是為了解決整個項目中的某一個問題。這樣,學(xué)生在學(xué)習(xí)的時候帶著一定的目的,不會覺得學(xué)習(xí)程序設(shè)計沒有用;另一方面每次解決了一個問題,都是對學(xué)生自信心的一個提升,其學(xué)習(xí)興趣也就會越來越濃。我們以學(xué)生成績管理系統(tǒng)為例,系統(tǒng)能夠?qū)崿F(xiàn)的功能包括:各類課程成績的添加、修改、刪除、查詢、排名、統(tǒng)計等。學(xué)生在看完系統(tǒng)演示以后,對整個項目有一個總體了解。接下來是模塊劃分,系統(tǒng)能夠?qū)崿F(xiàn)的功能可以轉(zhuǎn)化為C程序的函數(shù),這樣就引入了第一個知識點函數(shù)。在某一個函數(shù)中又如何來實現(xiàn)功能呢?這樣就引入第二個知識點C程序的基本結(jié)構(gòu)。查詢功能涉及到函數(shù)、變量定義、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)、文件操作等大知識點,函數(shù)又包含函數(shù)定義、函數(shù)調(diào)用、參數(shù)傳遞等知識點。這樣把一個大的項目劃分成為若干個知識點,學(xué)生按照項目的要求,每節(jié)課學(xué)習(xí)必須的知識點,完成項目中某一項任務(wù)。
2.注重實踐環(huán)節(jié),加強系統(tǒng)分析設(shè)計能力培養(yǎng)。實踐環(huán)節(jié)不僅包括上機調(diào)試,還包括上機以前的系統(tǒng)分析設(shè)計。通常我們上機練習(xí)都是由老師布置課后習(xí)題,學(xué)生上機調(diào)試。書上的大部分習(xí)題都是由例題改編而成,學(xué)生需要做的就是修改例題,調(diào)試完成。這樣的實驗在學(xué)期初是必須的,但隨著學(xué)習(xí)的不斷深入,單純的模仿很難提高學(xué)生的能力,必須要引導(dǎo)學(xué)生動腦筋思考。這就要求老師布置作業(yè)時要根據(jù)整個項目的結(jié)構(gòu)、學(xué)生學(xué)習(xí)的進程設(shè)計作業(yè),給學(xué)生提出新問題。這樣就要求學(xué)生上交的作業(yè)不僅包括程序代碼,還包括程序的分析、設(shè)計過程,這樣才能鍛煉學(xué)生思考、分析問題的能力。教師在進行實驗內(nèi)容設(shè)計上,應(yīng)該考慮到學(xué)生的學(xué)習(xí)進程、學(xué)習(xí)狀態(tài),在課程的前期教學(xué)中,實驗內(nèi)容應(yīng)該按層次劃分成基本實驗和提高實驗。基本題應(yīng)該按照模仿例題的方式,讓學(xué)生通過簡單的修改就能實現(xiàn),比如教材中有兩個數(shù)字比較大小的例題,可以讓學(xué)生完成三個數(shù)字比較大小的作業(yè),一方面學(xué)生可以盡快掌握C語言程序的基本結(jié)構(gòu),另一方面學(xué)生很容易產(chǎn)生成就感,激發(fā)學(xué)生學(xué)習(xí)興趣。在課程的后期教學(xué)中,實驗內(nèi)容以綜合性實驗為主,這個時候的實驗不能要求所有學(xué)生都全部完成,應(yīng)該分組進行,讓前期表現(xiàn)優(yōu)秀的學(xué)生充當團隊負責人,帶領(lǐng)其他學(xué)生完成項目。為了培養(yǎng)學(xué)生分析問題解決問題的能力,在實驗遇到問題的時候,首先要求團隊之間有一個內(nèi)部交流討論的過程,這個過程應(yīng)該是團隊內(nèi)部學(xué)生進步最快的一個過程,應(yīng)該作為團隊考核的一部分。如果內(nèi)部不能得出結(jié)果,可以上網(wǎng)查閱其他資料,和其他團隊或教師交流。在進行程序設(shè)計指導(dǎo)過程中,教師不應(yīng)該統(tǒng)一標準,應(yīng)該尊重每個學(xué)生的個體差異,對于不同的學(xué)生要鼓勵其從不同角度認識問題,使用不同的方式描述算法,用不同方法求解問題,同時給予適當?shù)目茖W(xué)的評價。在實驗內(nèi)容的設(shè)計上,針對同一個實驗任務(wù),要鼓勵學(xué)生使用不同的算法來實現(xiàn),從而培養(yǎng)學(xué)生計算思維的多樣性和創(chuàng)新性。
3.充分利用豐富的網(wǎng)絡(luò)資源。當前網(wǎng)絡(luò)技術(shù)飛速發(fā)展,覆蓋著整個社會的各個層面。絕大部分學(xué)生都可以通過圖書館、宿舍寬帶或者手機接入互聯(lián)網(wǎng)。這樣使得學(xué)習(xí)的方式更加多種多樣。為了讓學(xué)生課后也能自主學(xué)習(xí),網(wǎng)絡(luò)學(xué)習(xí)平臺是一種新型的學(xué)習(xí)方式,它在悄然地改變著我們的生活,為我們提供了良好的學(xué)習(xí)環(huán)境和互動學(xué)習(xí)的機會。我們自主開發(fā)了學(xué)生在線學(xué)習(xí)平臺,不僅對學(xué)生開放了教學(xué)大綱、電子教案、實驗指導(dǎo)等模塊,學(xué)生還可以通過這個平臺提交作業(yè),單元測試,與老師在線交流,隨時提出問題。這種新型的學(xué)習(xí)方式,為我們提供了新的更廣闊的學(xué)習(xí)空間,也在悄然改變著我們的學(xué)習(xí)觀念和學(xué)習(xí)方式。
4.構(gòu)建多樣化的考核方案。教學(xué)評價是檢驗教學(xué)質(zhì)量并使教學(xué)不斷改進和完善的重要環(huán)節(jié),同時也是指引學(xué)生學(xué)習(xí)方向的一個燈塔。傳統(tǒng)的考試基本上是期末成績+出勤+實驗報告。這種形式過于死板,理論性知識較多,實踐操作較少,不利于培養(yǎng)學(xué)生的綜合能力。老師在教學(xué)的過程中也受到考試的影響,盡可能多地灌輸C語言知識點。如果不在考核中加入學(xué)生程序設(shè)計思想、分析問題解決問題的能力等,整個教學(xué)方法設(shè)計就沒有辦法執(zhí)行。“項目引導(dǎo)、任務(wù)驅(qū)動”的考核方案應(yīng)該包括學(xué)生的知識能力、素質(zhì)表現(xiàn)和技能表現(xiàn)三部分。考核形式應(yīng)該包括形成性考核和終結(jié)性考核相結(jié)合的方法,實現(xiàn)評價過程的動態(tài)化。每個項目考核時應(yīng)該涵蓋知識、技能、態(tài)度三方面。考核成績的評定在項目化教學(xué)中進行,以項目完成情況為基礎(chǔ)。既重視項目成果,也重視項目實施過程中的態(tài)度。根據(jù)程序設(shè)計課程的特點,我們采用全過程考核方式,將學(xué)生的成績認定貫穿于整個學(xué)期。終結(jié)性考核即期末成績的比例下降到50%,形成性考核即平時成績的比例上升到50%。在形成性考核部分中,課堂出勤占20%,包括實驗的出勤和參與情況、實驗過程中的態(tài)度、紀律。團隊考核占30%,團隊成績中,負責人占60%,其他團隊成員占40%,考核內(nèi)容包括團隊的創(chuàng)新能力、協(xié)作能力、溝通能力。創(chuàng)新能力是指團隊對于問題能給出的解決方案和算法是否合理。協(xié)作能力是指團隊對于給出的綜合性實驗,是否能合理分配人員角色,人盡其才。溝通能力是指團隊在遇到問題時的討論情況,是否及時有效。課堂表現(xiàn)占30%。課堂表現(xiàn)分成兩部分:①課上實訓(xùn)題目完成與操作情況。程序完成情況占60%:能正常運行,無語法錯誤;若有錯誤,經(jīng)學(xué)生本人調(diào)試后能正常運行;基本功能完備;在完成基本功能的基礎(chǔ)上,有擴展。操作情況占40%:要求操作熟練,各種操作有提示。②課上解答方法講解部分:每講解一題加分,如有不同解答方式可繼續(xù)講解,有創(chuàng)意的加分。實驗報告占20%。這種考核辦法一方面降低了期末成績的比重,大大降低了學(xué)生臨時抱佛腳的想法;另一方面平時考核比重增加,促進學(xué)生學(xué)習(xí)的主動性、積極性。以往學(xué)生的學(xué)習(xí)過程,隨著課程難度逐步增加,學(xué)生越來越難學(xué)懂,也不愿與老師交流,興趣越來越低。在新的考核方案中,每個學(xué)生都存在于一個團隊中,有了一個互相交流的平臺,有問題都可以相互交流。另外團隊的成績與自己息息相關(guān),大家都愿意為了團隊的成績盡心竭力,既能學(xué)到更多程序設(shè)計的知識,還能培養(yǎng)學(xué)生團隊協(xié)作、與人相處的能力。
隨著社會的不斷發(fā)展,社會對學(xué)生的要求也在不斷提高,如何培養(yǎng)提高學(xué)生的創(chuàng)新精神、團隊意識及分析問題、解決問題的能力,我們需要不斷對教學(xué)方式方法改進創(chuàng)新,才能適應(yīng)社會新的發(fā)展需要。
參考文獻:
[1]張海林,杜忠友,孫曉燕.計算機專業(yè)中的C語言教改方案探討[J].中國校外教育,2010,(08):168.
[2]劉克興.信管專業(yè)C語言教改初探[J].科技致富向?qū)В?010,(29):27,36.
[3]王可,何福保.《C語言程序設(shè)計》教改的探索和實踐[J].考試周刊,2013,(A2):120.
[4]歐新良.非計算機專業(yè)《C語言程序設(shè)計》課程教改初探[J].長沙大學(xué)學(xué)報,1999,(02):80-81,70.
基金項目:2013年山西省高等學(xué)校教學(xué)改革項目(J2013081);山西中醫(yī)學(xué)院專業(yè)建設(shè)與教學(xué)改革第三批立項項目(2013107、2013110)