
[摘 要]隨著時代的發展,“C語言程序設計”課程已經成為高等學校非計算機專業學生的計算機基礎課程,在培養大學生良好的編程習慣,提高計算機編程能力和水平方面起到了重要作用。因此,迫切需要改變教學模式、更新教學內容、完善教學方法、豐富教學手段,使大學生養成良好的計算機素養,以適應新時期社會的需求。
[關鍵詞]C語言程序設計 教學 改革
[中圖分類號] G642 [文獻標識碼] A [文章編號] 2095-3437(2013)11-0122-02
隨著科學的發展,計算機技術得到了日益廣泛的應用,這對高校非計算機專業大學生的計算機水平也提出了更高的要求。他們除了要具有計算機操作能力,還要掌握一定的計算機編程技巧。因此,高等院校都把計算機語言的學習納入了教學計劃,程序設計課程也作為了非計算機專業學生的重要基礎課程。
“C語言程序設計”課程是學生進入大學的第一門計算機程序設計課程。“C語言程序設計”課程不僅要講解計算機高級語言的語法、語義和編程技巧等,更主要的是要向學生傳授程序設計的基本思想、方法,培養學生邏輯思維、組織協作和創新開發的能力,以便將來更好地將這些知識應用于專業課程的學習,同時在未來的就業過程中能更快地融入社會,真正成為符合時代發展,適應社會需求的高科技人才。
一、“C語言程序設計”課程現狀分析
“C語言程序設計”課程的理論性和實踐性都很強。目前,通常的安排是總學時為64學時,理論與實驗學時的比例為3:1。在理論課上既要講基本的語法知識又要講編程方法,在實驗課上既要進行基本的驗證性實驗又要進行項目開發。由于學時的嚴重不足,教師往往顧此失彼,學生也疲于奔命。學期結束后,學生普遍感到程序設計課程晦澀難懂,不會應用,無從下手,許多學生因此失去了學習熱情。專業課教師也反映學生的計算機編程能力很低,應用水平差,不能滿足專業課的要求。
二、“C語言程序設計”課程的改進措施
(一)分段教學法
“C語言程序設計”課程在教學中可以采用“分段教學法”。將整個學期的教學活動分為兩段,第一段教學專門用來介紹基本語法,夯實基礎知識;第二段教學則集中講編程,是對“C語言”知識的全面應用。
在第一段教學中,許多C語言教材在語法的講解上過難、過細,偏離了實際應用,同時也影響了學生的學習積極性和自信心。
全國計算機等級考試(National Computer Rank Examination,簡稱NCRE)是經原國家教育委員會(現教育部)批準,由教育部考試中心主辦,面向社會,用于考查應試人員計算機應用知識與技能的全國性計算機水平考試體系。考核內容是根據社會不同部門應用計算機的不同程度和需要、國內計算機技術的發展情況以及中國計算機教育、教學和普及的現狀而確定的,是貼近實際的一種要求。學生在學完“C語言程序設計”課程后,應該能通過國家非計算機專業計算機等級考試的二級測試。因此,“C語言程序設計”課程第一段可以參照計算機等級考試(二級C語言)的大綱,調節教學內容,同時,實驗及練習題均可以從歷年的等級考試真題中選擇。這樣既節省了時間又有針對性,符合了社會的需求,也為學生順利通過計算機等級考試打下了良好的基礎。
第二段教學則全部用來培養學生的結構化程序設計思想和訓練學生的編程能力。在這段時間里可以先向學生講解經典例題的設計思想,剖析編程技巧,再向學生布置一些與實際相關聯的題目,讓學生通過自己的分析和思考來完成,并撰寫報告。這樣不僅幫助學生提高了編程能力,更培養了學生獨立分析問題和解決問題的能力。
(二)項目驅動法
由于學時有限,往往不能在課堂上達到所有教學目的。可以在學期的開始,向學生布置一些較大的、綜合性的項目,項目的實現將貫穿學期始終。
例如“學生成績管理系統”,在講第一章C語言概述時,在學生熟悉結構化程序設計方法的同時引出題目,通過自頂向下的設計方法設計出“學生成績管理系統”的各個模塊,如圖1所示。
在講數據類型時,介紹學生、教師、成績等結構體數據類型所涉及的各個基本數據類型,使學生對數據類型的概念有一個清晰和整體的認識。
在選擇結構程序設計這一章里,讓學生設計一個顯示界面,在選擇不同的選項時顯示不同的信息、實現不同的功能,同時,在這章可以實現依據輸入的成績評定學生成績的等級,如“A”、“B”、“C”和“D”等。
在數組一章,學生知道了如何通過數組輸入多個學生信息。
在函數一章,可以教學生將各個模塊的功能通過子函數實現。
在結構體一章,學生學會如何建立學生、教師、成績等構造數據類型。
在指針一章,讓學生通過指針快速訪問數據。
最后在文件一章實現對學生數據的存儲和讀取,最終完成這一項目,實現項目的全部功能。
在整個教學過程中,層層深入,環環相扣,在推進教學內容的同時逐步完善此項目。
教師可以根據學生人數為學生布置若干個項目,將學生分成多個小組,分工協作,共同完成。這樣,既能讓學生體驗項目的開發、完成的全過程,又能培養學生團結協作、共同進取的精神,為學生畢業后走向社會、融入群體打下良好的基礎。
(三)改革考試形式
“C語言程序設計”的學期總成績不再由以往的期末考試決定,而是將成績的評定分散在整個教學過程中,由各分段的成績匯總而成。
講完基本語法后,進行階段測試時,可采取筆試的形式,這部分成績占總成績的30%。講完編程,再進行測試,采取上機考試的形式,學生直接在計算機上調試程序,這部分的成績也占總成績的30%。學期結束后,要根據學生參與項目的完成情況,再給30%的分。剩下10%的成績根據學生平時的課堂出勤率給分。
將學期總成績劃分成不同的部分,使學生在整個學習過程中都有方向、有目標,能有效地調動學生的學習積極性,培養學生良好的學習習慣。避免出現平時不學,考試突擊的現象。同時,這種考核方式既考核了學生對基礎知識的掌握程度,也考核了學生的編程能力和項目開發能力,是一種全面、合理的考核方式。
(四)網絡教學
現在各高校在課堂教學中普遍使用大屏幕、電子課件,豐富了課堂內容,但也帶來許多弊端。電子課件信息量大,學生很難在課堂上將教學內容全部消化、理解,影響了學生對課程的理解和掌握。
建立“C語言程序設計”課程網站,開發網絡資源。“C語言程序設計”課程網站包括課程簡介、教學資源、學習園地和互動交流等四個模塊。
課程簡介模塊中有教學團隊、教學環境、教學方法、考核方案和重點及難點的介紹等。
教學資源模塊中將提供教學大綱、教學進程表、多媒體課件、電子教案和經典例題講解的視頻演示等。
學習園地模塊中有常見問題解答、參考書目、等級考試的筆試、上機試題及最新資訊等。
互動交流模塊中有作業提交、在線答疑和問卷調查等,方便師生的交流。
“C語言程序設計”課程網站將傳統的教學方法與現代網絡信息技術相結合,彌補了傳統課堂教學不可重復的缺憾,突破了時空限制,為學生創建了自主、自由的學習環境,提高了學生的學習興趣,拓展了學生的學習空間,增強了對學生的引導和幫助。
三、總結
通過對“C語言程序設計”課程教學模式的改革,非計算機專業學生的計算機編程水平有了較大幅度的提高,教學改革得到了學生的認可和好評。這也是對傳統教學模式的完善和提高,使課堂教學立體化、生動化,同時培養了學生的實踐能力和創新精神,促進了學生才智的增長。
[ 參 考 文 獻 ]
[1] 鄭睿穎.計算機教學中學生創新能力培養的探索與研究[J].現代教育科學,2009,(3):106,113.
[2] 姜代紅,任春美,程紅林.談計算機科學與技術創新型應用人才培養的實踐教學體系建設[J].現代教育科學,2010,(1):30.
[3] 袁懷民.基于新版人才培養方案的C語言程序設計課程教學研究[J].科技信息,2012,(30):7.
[4] 李祥林,賈桂霞,包理群,蘭聰花,李穎等.C語言程序設計課程改革與實踐探討[J].甘肅聯合大學學報(自然科學版),2012,26(4):103-106.
[責任編輯:劉鳳華]