摘要:分析了當(dāng)前C語言程序設(shè)計實踐教學(xué)中存在的問題,結(jié)合國家“工程師”教育培養(yǎng)計劃,提出了面向工程師培養(yǎng)C語言程序設(shè)計實踐教學(xué)改革措施,采用循序漸進的方法,設(shè)計上機教學(xué)環(huán)節(jié)和課程設(shè)計教學(xué)環(huán)節(jié)內(nèi)容,培養(yǎng)了學(xué)生獨立思考的能力、提出分析和解決問題的能力、動手實踐能力、實際工程項目開發(fā)能力、創(chuàng)新能力和表達溝通能力。
關(guān)鍵詞: C語言;工程師;實踐;課程設(shè)計;工程項目
中圖分類號:G642 文獻標識碼:A 文章編號:1009-3044(2013)10-2392-02
《C語言程序設(shè)計》課程是高校計算機類各專業(yè)開設(shè)的一門專業(yè)必修基礎(chǔ)課程,又是學(xué)生在大學(xué)階段接觸的第一門計算機語言課程。目前C語言程序設(shè)計教學(xué)實踐過程中主要存在如下問題:
1)學(xué)生感覺入門困難
由于C語言具有邏輯性強、內(nèi)容抽象、語句使用靈活的特點,并且學(xué)生要轉(zhuǎn)變思維模式,以計算機的思考方式來編寫程序,所以有相當(dāng)一部分學(xué)生感覺入門困難。
2)學(xué)生陷入“懂語法,但不會編程序”的怪圈
學(xué)生們通常會覺得C語言的語法知識并不難懂,也能夠聽懂老師課堂上分析和講解的例題,但真正自己動手編程解決實際問題時,有相當(dāng)一部分學(xué)生不知如何下手,從而陷入了“懂語法,但不會編程序”的怪圈。
3)驗證性上機比例過多,不會調(diào)試程序
C語言上機環(huán)節(jié)內(nèi)容一般都有80%以上的驗證性上機,學(xué)生按照書本例題程序鍵入計算機編譯運行,得到結(jié)果后進入下一個例題練習(xí),缺乏反思和舉一反三的過程。有些學(xué)生編譯程序出錯后,只是對照書上的代碼行一行一行的檢查程序,糾正錯誤,缺乏定位錯誤、調(diào)試程序的能力。上機課的目的應(yīng)該是訓(xùn)練程序設(shè)計思想和提高程序調(diào)試能力,而不是簡單的驗證程序,否則學(xué)生的分析問題和解決問題的能力得不到鍛煉,動手能力差。
4)缺乏綜合性的中小型項目的訓(xùn)練
C語言每次上機內(nèi)容都是針對書中一章或是幾章知識點內(nèi)容的訓(xùn)練,缺乏一個能夠涵蓋盡可能多的知識點的綜合性的中小型項目的訓(xùn)練,從而不能構(gòu)成一個完整的知識體系,因此學(xué)生缺乏工程開發(fā)能力和項目的掌控能力。
1 面向工程師培養(yǎng)的《C語言程序設(shè)計》實踐教學(xué)改革
1.1 面向工程師培養(yǎng)下對C語言程序設(shè)計教學(xué)提出新的要求
如何培養(yǎng)符合社會需要的工程技術(shù)人才是國內(nèi)外教育界普遍關(guān)注的問題。美國國家工程研究院工程教育委員會發(fā)起的舉世矚目的美國“2020年的工程師”教育計劃。教育部出臺重大教育改革項目“卓越工程師教育培養(yǎng)計劃”。培養(yǎng)學(xué)生的工程實踐能力和創(chuàng)新能力,是各大應(yīng)用型本科院校在實踐教學(xué)體系中的一個薄弱環(huán)節(jié)。
在這種背景下,提出了面向工程師培養(yǎng)的《C語言程序設(shè)計》實踐教學(xué)改革的想法,旨在培養(yǎng)學(xué)生獨立思考的能力、提出分析和解決問題的能力、動手實踐能力、實際工程項目開發(fā)能力、創(chuàng)新能力和表達溝通能力。
1.2 改革的主要思想和具體措施
改革C語言程序設(shè)計實踐教學(xué)內(nèi)容,采用“循序漸進”的方法,使學(xué)生在上機環(huán)節(jié)中通過引導(dǎo)編程、獨立編程這樣的安排,使學(xué)生感受到解決問題的快樂和成就感,提高學(xué)習(xí)的主動性。直到最后通過課程設(shè)計環(huán)節(jié)互相協(xié)作完成一個中小型的信息系統(tǒng),培養(yǎng)學(xué)生的工程項目開發(fā)能力、創(chuàng)新能力以及協(xié)同工作和表達溝通能力。
1) 上機教學(xué)環(huán)節(jié)引入的內(nèi)容
C語言程序設(shè)計上機教學(xué)環(huán)節(jié)貫穿到整個C語言程序設(shè)計授課過程之中,在機房完成。為配合這一環(huán)節(jié),專門編寫了C語言程序設(shè)計上機指導(dǎo)手冊,其中綜合性上機內(nèi)容達到了85%以上,上機指導(dǎo)手冊的內(nèi)容主要分為三部分:第一部分提出本次上機應(yīng)達到的目的和要求。第二部分是引導(dǎo)啟發(fā)學(xué)生按照步驟完成上機內(nèi)容。學(xué)生往往在一開始就從頭到尾地編寫一個完整的程序會覺得非常困難,所以第二部分遵循引導(dǎo)啟發(fā)為主的原則,關(guān)鍵步驟都會給出指導(dǎo)提示信息,引導(dǎo)學(xué)生一步步的思考,啟發(fā)學(xué)生進行相關(guān)實踐,學(xué)生主要是以填空補缺或是改錯的形式完成該部分的上機內(nèi)容。另外,有些程序被故意設(shè)計成為錯誤的程序,學(xué)生要通過編譯改錯的環(huán)節(jié)將錯誤的程序改為正確的程序,在這個過程中,可以訓(xùn)練學(xué)生閱讀錯誤、定位錯誤和調(diào)試程序的能力。通過這一部分上機內(nèi)容的設(shè)計,學(xué)生在上機實踐過程中有章可循,不至于無從下手,使學(xué)生漸漸掌握了編寫程序應(yīng)遵循的步驟和規(guī)律,同時也能增強編程的興趣與自信心。第三部分是獨立編程部分,完成一個完整程序從頭到尾的編寫。通過第二部分的引導(dǎo)啟發(fā)訓(xùn)練,學(xué)生在完成第三部分的獨立編程將會更加容易上手。通過上機環(huán)節(jié)的訓(xùn)練,培養(yǎng)了學(xué)生獨立思考的能力、提出分析和解決問題的能力和動手實踐能力。
2) 課程設(shè)計教學(xué)環(huán)節(jié)引入的內(nèi)容
C語言程序設(shè)計課程設(shè)計教學(xué)環(huán)節(jié)安排在C語言程序設(shè)計課程結(jié)束后接下來的兩周時間內(nèi)。課程設(shè)計要求學(xué)生完成三道題目,分別是萬年歷、井字棋游戲和員工工資管理系統(tǒng)。這些題目從易到難,涉及的知識面廣,涵蓋了控制語句、數(shù)組、函數(shù)、指針、結(jié)構(gòu)體和文件等知識點。n5RGwXNFvEvsWBfIANdptg==學(xué)生獨立完成萬年歷和井字棋游戲,員工工資管理系統(tǒng)要求學(xué)生合作完成。通過課程設(shè)計環(huán)節(jié)的訓(xùn)練,有效地培養(yǎng)了學(xué)生實際工程項目開發(fā)能力、創(chuàng)新能力和表達溝通能力。
3) 培養(yǎng)協(xié)同工作能力
在課程設(shè)計教學(xué)環(huán)節(jié),員工工資管理系統(tǒng)基本涵蓋了C語言全部的知識點,要求學(xué)生協(xié)作完成。學(xué)生2-3人自由組合分組,將任務(wù)進行分解,各自負責(zé)相對獨立的一塊項目內(nèi)容。在任務(wù)進展過程中,學(xué)生之間可以相互交流和討論,從而相互啟發(fā)和提高,激發(fā)了學(xué)生的求知欲,提高了學(xué)生的積極性,提升了學(xué)生的表達能力和溝通能力。
4) 增加課外上機時數(shù)
C語言程序設(shè)計課內(nèi)的上機時數(shù)有限,學(xué)生在有限的課內(nèi)上機環(huán)節(jié)里不能夠全面的訓(xùn)練所學(xué)的知識。如果學(xué)生能夠有效的利用課外時間上機練習(xí),不僅可以彌補課內(nèi)上機的不足,還可以充分挖掘?qū)W生的學(xué)習(xí)潛能,培養(yǎng)學(xué)生的自學(xué)能力,是課堂教學(xué)的有效補充和延伸。課外上機是在課堂之外進行的,所以上機方案的設(shè)計、程序調(diào)試、結(jié)果分析以及上機過程中遇到的各種問題,均需要學(xué)生自己獨立解決。因此,與課堂上機相比,課外上機更能培養(yǎng)學(xué)生的自學(xué)能力。在C語言教學(xué)過程中,要求授課學(xué)時與課內(nèi)課外上機學(xué)時的課時安排是1比1。
2 結(jié)論
C語言程序設(shè)計的實踐教學(xué)改革必須以提高學(xué)生的編程實踐能力為目標,針對教學(xué)、實踐中的問題進行改革,才能達到預(yù)期的效果。該文通過對實踐教學(xué)過程中的問題進行分析,提出了有針對性的教改措施,注重學(xué)生實踐編程能力的培養(yǎng),提高了學(xué)生的學(xué)習(xí)興趣,取得了良好的教學(xué)效果。
參考文獻:
[1] 彭治國.基于“卓越計劃”C語言程序設(shè)計實驗教改研究[J].裝備制造技術(shù),2012(7):225-227.
[2] 金華.“C語言程序設(shè)計”教學(xué)研究[J].計算機教育,2012(14):60-62.
[3] 吳含章. C語言教學(xué)模式的改革實踐[J].福建電腦,2012(8):158-160.
[4] 劉井蓮. C語言實踐教學(xué)改革與探討[J]. 綏化學(xué)院學(xué)報,2012,32(4):170-171.
[5] 李祥林. C語言程序設(shè)計課程改革與實踐探討[J]. 甘肅聯(lián)合大學(xué)學(xué)報:自然科學(xué)版,2012,2(4):103-106.
[6] 高樹芳. 《C語言程序設(shè)計》“三段式"教學(xué)模式探索與實踐[J].福建電腦,2012(7):206-207.
[7] 陳學(xué)進. C語言程序設(shè)計理論與實踐教學(xué)一體化研究[J]. 安徽工業(yè)大學(xué)學(xué)報:社會科學(xué)版,2012,29(1):131-132.
[8] 譚浩強. C程序設(shè)計[M]. 4版.北京:清華大學(xué)出版社,2010.