羅布次仁
[摘 要]C語言是一門高級程序設計語言,其涉及的概念比較復雜,規則繁多,使用靈活,容易出錯,初學者很難掌握,是一門難學也難教的課程。本文針對我校少數名族學生非計算機專業C語言教學實際過程中存在的問題,談一談如何從改進教學方法、組織教學內容、上機實踐等方面來提高學生的學習效果。
[關鍵詞]C語言;課堂組織;任務驅動
[中圖分類號]G424.21
[文獻標識碼]A
[文章編號]1672-5158(2013)05-0049-01
C語言功能豐富,表達力強,應用面廣,使用靈活、目標代碼率高,可移植性好,既有高級語言的優點,又有低級語言的很多特點,使得C語言有好學、易用的優點,為此很多高校的計算機專業甚至是非計算機專業都將《C語言程序設計》作為必修課開設。但由于C語言具有繁多的數據類型、復雜的語法結構,而且我校學生又大多來自衣牧區的少數民族,計算機文化基礎底子薄,英語水平低,更沒有任何程序設計的知識背景,使得C語言變得教師難教和學生難學的一門課程,甚至在學生當中產生“談C色變”的恐懼心理。以下結合我校非計算機專業開設這門課程的實際,來淺談怎樣提高C語言的教學效果。
一、改進教學方法,調動學生的學習興趣
教學方法對于教學質量起著至關重要的作用,也是學生直觀感受最直接和最強烈的。在課堂上的互動不僅會對課堂教學質量產生深刻的影響,還會加深師生之間的了解和友誼,實現師生J『青感和價值觀的交流。傳統的教學方式是單向進行的,一堂課教師如同牧師滿堂說教,缺乏趣味性,學生只有忍受煎熬被動地聽。這樣使學生在學習C語言時,剛開始是好奇的、積極的,但隨著課程內容的深入,有的內容需要記憶、思考,難度就陡增了,而興趣就銳減了,感覺學習C語言很枯燥、很難學。
為此,首先應該要改變教學方法。C語言這門課程的教學不能采用傳統的按部就班的、填鴨式的教學方法。首先,應實現教師角色的轉換,以探究式的教學方式增加與學生的互動環節,突出學生的主體作用,注重培養學生分析問題和解決問題的能力。其次,為了充分調動學生學習興趣,教師圍繞課程教學目標,以“程序設計”思想和方法教育為主導,用“任務驅動”教學方法,既圍繞一個個的任務來教學,通過完成特定的任務來掌握新知識鞏固舊知識。從而使學生從實際參與程序設計,從完成既定任務中獲得成就感和增強自信心。當然,教師所設計的任務要充分考慮少數民族學生的心理特點、接受能力和興趣,而不能簡單地套用教育發達地區的一些成功經驗,更不能想當然的閉門造車。最后,為了讓學生在有限的學習時間里,更好的消化吸收所學的知識,不僅要完成計劃任務,還要培養學生閱讀一些較長的程序的習慣,通過閱讀程序寫出運行結果、分析程序的算法還能否繼續優化,在這一過程中,學生認識到利用所學知識可以分析和編寫出程序,同時也提高了計算機專業英語的水平,從而激發他們寫程序的熱情。
二、認真組織課堂教學,提高教學效果
C語言程序設計的目的是培養學生分析問題、解決問題的能力,要掌握C語言的使用規則和編程思想、方法及技巧,要學會編寫程序代碼,學會使用各種編譯工具調試程序的方法和技巧。因此在教學中要做到:
(一)注重基礎,突出重點,問題簡化。C語言教學中,課堂內容的引入要使學生容易接受,符合少數民族學生的認知規律。要做到注重基礎、突出重點、分散難點,一定要把握好由淺入深,由易到難的循序漸進的教學過程,力求概念準確,對于相關算法做到舉一反三,觸類旁通的效果。在教學時切忌在語法細節上死摳糾纏不清,而應把重點放在編程的思想,這樣就能避免脫離算法而單獨講語法規則所造成的空洞和枯燥。同時應盡可能分散難點、語言簡潔通俗,即能用一句話概括的就不要用三四句冗余詞,以免學生一開始就想放棄的消極情緒。
(二)課堂形式豐富多樣。C語言教學中,課堂形式應采用多種方式讓學生多實踐并能正確理解所講的內容。對知識點的鞏固與加深理解可以采用提問及師生共同探討的方式,即探究式教學方式;采用修改現有代碼的方式,分析與預期結果有什么不同,或者和預期結果相同,但用了不同的編碼的方式來引導學生鞏固學過的內容,即啟發引導教學方式;還可以借鑒傳統的考題形式來練習,比如可以用選擇題、填空題、改錯題等,使學生能及時運用所學知識來解決實際問題,即適當借鑒傳統的教學方式。以此吸引學生的注意力從而提高課堂教學效果。
(三)發揮現代教學設備的作用,提高課堂效果。為培養學生的分析問題、解決問題和創新思維的能力,體現高等教育的真諦,在C語言設計教學中,盡量采用現有的現代化教學設備,提高課堂效率,如多媒體教室的應用,利用一些與教學有關的軟件與素材以及教師精心制作的課件等手段來教學,以提高課堂的含金量。將程序調試部分的講解可進行現場演示,使各種操作變得更加形象化和具體化,比如在講解函數調用時,由于傳統的靜態教學很難表現出“調用”、“返回”的動態效果,而采用多媒體的動態方式,使學生有更加直觀、形象的認識,這樣就避免了教師說的累死學生卻云里霧里的窘境。還可以在演示完某些操作后,請學生到教師機上操作體驗,通過大屏幕,能調動學生的積極性,引起共鳴,實現了師生互動,加大了教學內容的輕松趣味性。
三、加強實驗環節,培養學生的編程水平
上機實驗是學生真正掌握C語言語法、語義、程序結構的最重要的也是唯一的途徑,離開了實驗操作,就是紙上談兵。上機實驗是學生加深基本概念和算法的理解、提高程序設計能力的重要環節。因此,在進行每一部分的學習的時候,都應該配有相應的學生上機實踐的機會,而且每一次實驗內容都應由教師精心設計,以滿足各個層次學生的需求。實驗內容應包括基本實驗題與綜臺n生較強的實驗題。其中,基本實驗要求每一個學生在上機調試中必須完成,而能力較強的一部分學生可以在此基礎上適當做一些深人的思考,解答附加實驗題。還要求學生上機前分析題目,決定算法與數據結構,并編出程序源代碼,這樣在上機時,學生就有的放矢,主要精力放在調式程序上。最后,對于普遍存在的問題,進行集中提示、講解,演示以增加學生的印象,并要求學生及時寫出實驗報告,分析程序結果。只有當基本概念、語法規則與反復上機調試操作相結合,才能對C語言有更加深入和全面的認識和理解,也真正能培養和提高學生的程序設計水平。
四、結束語
《C語言程序設計》與其他學科教學方法不太一樣,其理論較抽象,課堂上用傳統的“板書+嘴講+課后作業”,會使學生缺乏感性認識,難以理解。采用理論和上機實驗相結合,語法與實例相并存,以“任務驅動”的教學方法來激發學生的學習興趣,讓學生主動、愉快地學習,滿足他們的求知欲,才能實現提高C語言教學效果目的。
參考文獻
[1]李學會.《C程序設計教學改革與實踐》(J).實驗室科學201 O年第2期
[2]陳秋娣,常夙恒.《淺談計算機應用基礎教學方法》(J).教育戰線.201 O年第54期
[5l紀新華,張麗紅,洪瑾,周畢文,蔣本珊《本科課堂教學質量調查報告帶給我們的一些思考》[J].北京理工大學學報(社會科學版)2009年第1期
[4]范麗麗,王辰彥.《淺談C語言及其學習方法》(J).科技資訊.2008年第1 5期
[5]李雁飛.《任務驅動法在計算機基礎教學中的應用》(J).長治學院學報.2008年1 O期
[6]高翔,侯小靜.《關于C語言教學的思考》[JI_科技教育創新.2006年第8期
[7]譚浩強.《C程序設計》(第三版)(M).清華大學出版~~2005年