林潔馨 李良榮

【摘要】本文針對C語言程序設計教學中存在的各種問題進行了分析,結合貴州大學電子大類專業學生的特點及貴州大學實驗室的具體狀況,提出了一種實驗式教學模式。通過各種統計數據分析,實驗式教學模式能提高教學效果,讓學生在老師的引導下能更加主動地學習。
【關鍵詞】C語言程序設計 實驗式教學 教學效果
【基金項目】貴州省教學內容與課程體系研究重點項目“電子設計教學與課程體系研究”(黔教高發[2011]281號),教育部第三批全國高等學校特色專業:貴州大學“電子科學與技術”。
【中圖分類號】G642 【文獻標識碼】A 【文章編號】2095-3089(2014)04-0123-02
自上世紀90年代以來,C語言迅速在全世界普及推廣,“C語言程序設計”成為各高等學校的一門最基礎的計算機課程。C語言程序設計在計算機教育和計算機應用中發揮著重要的作用[1]。本文結合當前貴州大學“電子大類”學生的特點,通過多年從事C語言程序設計課程教學經驗總結,從教學內容、手段等方面提出一種新的教學思路,讓學生在教學互動中的角色從被動變為主動。
一、現狀分析
由于高校各專業的專業課程學分壓縮,培養計劃中電子大類專業的“C語言程序設計”課程的課時數,從以前的72+36學時(72課時+36學時實驗)到現在的48+16學時。要在有限的教學時間內完成規定的教學內容,且保證高的教學質量,一直是我們探索的問題。而且對于非計算機專業的理工類學生來說,一般在開設“C語言程序設計”課程前僅學習了“計算機基礎”課程,在沒有計算機體系結構、算法等基礎的情況下學習C語言課程,普遍認為抽象、難懂,致使該門課程的教學成績不盡人意。
(一)目前存在的教學問題
1.課程學時少,課程內容多,因此在理論課教學中以老師講授為主,在實驗課教學中學生往往把指導書上的原題照樣輸入,運行出結果后即大功告成,缺乏思考,也缺乏和老師的溝通。
2.學生基礎較差,缺乏學習主動性,而且學生們基本沒有課前預習、課后復習的習慣。大多數學生反映課堂上雖然聽懂了,但寫程序時無從下手。并且不愿意詢問老師也不愿意和同學交流,久而久之害怕學習C語言程序設計。
作為一名教師,如何在每一個有限的50分鐘內調動學生主動學習,如何引導學生開動腦筋、思考、理解所學知識,從模仿別人的程序到自己編寫程序是我們提高教學質量的關鍵[2]。
(二)目前的教學方法
近年來本科生數量愈來愈多,學校實驗教學資源不足,“C語言程序設計”課程教學中學生只能是先在教室接受老師的理論授課,很長時間后才能進入實驗室動手編程,這也造成了理論課上學習的知識不能馬上消化,理論和實驗嚴重脫節;又由于實驗課時量減少,學生人數增多,實驗設備更新慢等原因,教學效果很不盡人意。目前主要的教學方法有:
1.板書教學:這種教學方式是最古老,但也是我們一直采用的教學手段。老師一邊講解,一邊把重點、難點在黑板上書寫出來,學生會跟著老師的思路去思考問題,學生的注意力能夠較好的控制,效果也比較好,但是由于老師板書時會花去較多時間,所以該手段已經不適用于教學課時少、教學內容多的現代課程教學了。
2.多媒體式教學:老師采用課件進行授課,減輕了老師板書的負擔,增加了授課的信息量,但是課件是以幻燈片模式播放,學生容易疲倦、走神,而且在授課過程中一些推理過程學生很難想象,老師在用課件授課時速度較快,學生的思維較難與之同步,從而影響教學質量[3]。
(三)教學內容
按照課本知識的邏輯體系進行課堂教學,一般先介紹數據類型、運算符及語句等概念,再介紹程序結構、數組、函數、指針等,從知識的邏輯上來說這是可以的,但是從學生知識的掌握情況及編程能力上看這種按照課本體系的教學是不滿意的。
二、實驗式教學模式
選擇合適的教學內容,學生在老師的引導下先進行思考、討論,并選取一種大多數學生理解的算法,畫出流程圖,然后在編譯環境下根據流程圖“演示”編寫程序并講解,讓難懂的語法和概念融入“程序編寫”中。學生雖然沒有親手完成程序的編寫,但參與了編程的思想、過程、執行及檢查,學生能在課堂上立即消化所學理論知識,真正做到理論與實踐相結合。學生通過觀看、模仿,在實際操作中去探索和領悟各個概念,激發了他們的興趣、減輕了學習的壓力。采用這種互動式教學方法,真正實現教、學、做一體化。
實驗式教學模式的實現有兩個關鍵問題:①教學內容的選擇;②老師的精心準備。
(一)教學內容的選擇
教學內容以編寫程序為主,而不是每個單一的知識點。程序的選擇要由淺入深,知識點要覆蓋面廣。先選擇一些比較簡單的程序介紹C程序的語言成份和語法應用規則。例如:數據,必須“先定義,再使用”,在程序中進行比較演示;如何進行數據的輸入和輸出,在程序中對各種格式進行分析說明。有時在編程時可以刻意的編寫一些同學們容易弄錯和不容易看出的錯誤語句,編譯出現問題后引導學生去分析并解決問題,培養學生“分而治之”的模塊化程序設計思想。最后,分析一些稍微復雜且與專業相關的C語言程序,為學生開發大規模程序設計打下基礎。教學內容選擇時還要做到與時俱進[4],對于電子大類的學生來說,在高年級學習單片機、接口等課程時會用到C語言編程,在做畢業設計時會用C語言做一些系統開發。總之,在選擇教學內容時盡量做到針對性、啟發性、參與性。
(二)老師的精心準備
采用實驗式教學模式是否能取得好的教學效果,關鍵是老師的精心準備。老師不僅要對教學內容進行準備,還要提高自身素質修養。準備教學內容時老師要遵循簡單到復雜,單一到綜合的原則,要準備許多覆蓋大量知識點的實例。隨著教育改革力度的加強,教師的角色從傳授者轉變為引導者[5],老師在教學中要適時地提出問題引導學生思考,讓學生積極開動腦筋分析問題,理解解決思路、編程思想,還要針對學生提出的問題進行分析、并進行編譯,根據問題引導學生的創新思維,因此要求老師的知識面要廣,且有實戰經驗。
三、教學評價
為了客觀的評價實驗式教學模式,我們分別對采用板書教學、課件教學和實驗式教學的班級“C語言程序設計”期末考試成績進行了統計分析,如圖1所示。還采用了問卷的方式進行各種教學方法滿意度的調查分析,如圖2所示。從分析可見實驗式教學模式能提高教學效果,而且學生對該教學模式比較滿意。
四、結束語
本文主要分析了C語言程序設計教學中存在的一些弊端,通過多年的教學實踐經驗表明,在教學硬件資源欠缺的情況下,實驗式教學模式能夠提高學生的學習積極性、啟發學生創新思維、提高教學效果。希望我們的教學經驗能與同行分享,為非計算機專業學生的C程序設計能力的提高做出貢獻。
參考文獻:
[1]譚浩強.《C 語言程序設計 》(第四版)[M]. 北京 , 清華大學出版社.2010
[2]劉曉華.非計算機專業VB程序設計教學探討[J].科技創新導報,2011;vol.36,135-136
[3]戚曉芳.C++程序設計教學新思路[J].電氣電子教學學報,2004;vol.26,30-32
[4]吳躍,陳崢.面向對象程序設計教改探索[J].計算計教育,2010;vol.8,60-63
[5]胡樂寧.淺談高校教改形式下對教師能力的培養[J].大學教育,2012;vol.1,N0.2,48-49
作者簡介:
林潔馨(1976—),女,貴州省貴陽市人,副教授,碩士,主要從事C語言程序設計及集成電路等教學工作。