大連海洋大學(xué)信息工程學(xué)院 張 鑫 劉 威 王 穎 周 磊
高校非計算機(jī)專業(yè)《C語言程序設(shè)計》課程建設(shè)的創(chuàng)新研究
大連海洋大學(xué)信息工程學(xué)院 張 鑫 劉 威 王 穎 周 磊
目前國內(nèi)各個高校大多在非計算機(jī)專業(yè)開設(shè)了計算機(jī)語言課程,C語言作為一種廣泛流行的結(jié)構(gòu)化程序設(shè)計語言,成為了大多數(shù)高校非計算機(jī)專業(yè)計算機(jī)語言課程的教學(xué)語言?!禖語言程序設(shè)計》作為一門公共基礎(chǔ)課,要與時俱進(jìn),適時創(chuàng)新教學(xué)模式和方法。
C語言;能力培養(yǎng)
程序設(shè)計是高等院校非計算機(jī)專業(yè)計算機(jī)基礎(chǔ)教學(xué)課程體系中的重要課程。對于非計算機(jī)專業(yè)而言,程序設(shè)計的學(xué)習(xí)有助于理解計算機(jī)的能力所在,理解哪些是計算機(jī)擅長解決的問題,怎樣的方式方法是計算機(jī)擅長的手段,從而能更好地利用計算機(jī)來解決本專業(yè)領(lǐng)域內(nèi)的問題。根據(jù)我校的各個專業(yè)的不同特點,農(nóng)林、文科類專業(yè)開設(shè)了VF或VB程序設(shè)計,而理工科相關(guān)專業(yè)則開設(shè)了C語言程序設(shè)計。本文以《C語言程序設(shè)計》課程為例,從課程定位、目標(biāo)、主要特色、教學(xué)現(xiàn)狀等方面出發(fā),對課程對教學(xué)內(nèi)容、教學(xué)方法、教學(xué)過程實驗教學(xué)等方面做了改進(jìn)和創(chuàng)新,讓非計算機(jī)專業(yè)學(xué)生也能從學(xué)習(xí)程序設(shè)計類課程的過程當(dāng)中獲益匪淺,提升自身的職業(yè)技能。
(1)課程定位
C語言是古老而長青的編程語言,它具備了現(xiàn)代程序設(shè)計的基礎(chǔ)要求,它的語法是很多其他編程語言的基礎(chǔ),在系統(tǒng)程序、嵌入式系統(tǒng)等領(lǐng)域依然是無可替代的編程語言,在各類編程語言排行榜上常年占據(jù)前兩名的位置,對理工科專業(yè)學(xué)生而言,《C語言程序設(shè)計》是一門首選的必修的計算機(jī)編程語言課程。
(2)課程目標(biāo)
對于非計算機(jī)專業(yè)的學(xué)生,學(xué)習(xí)本課程的最主要目的是培養(yǎng)學(xué)生的“計算思維”?!坝嬎闼季S”(Computational Thinking)的概念首先是由美國卡內(nèi)基·梅隆大學(xué)計算機(jī)科學(xué)系主任周以真(Jeannette M.Wing)教授于2006年首次在美國計算機(jī)權(quán)威期刊Communications of the ACM 上提出的。計算思維是運用計算機(jī)科學(xué)的基礎(chǔ)概念進(jìn)行問題求解、系統(tǒng)設(shè)計以及人類行為理解的思維活動[1]。高校非計算機(jī)專業(yè)的計算機(jī)基礎(chǔ)類課程,重點加強程序設(shè)計類課程的建設(shè),除了教會學(xué)生如何使用一門語言,更重要的是提高學(xué)生利用計算機(jī)思維來解決問題的能力,在程序設(shè)計教學(xué)中,融入計算思維能力的培養(yǎng),實現(xiàn)單純程序語言的學(xué)習(xí)到利用計算機(jī)科學(xué)的概念和方法對問題進(jìn)行求解的能力培養(yǎng)。通過學(xué)習(xí)程序設(shè)計的基本方法逐步提高邏輯思維能力,為非計算機(jī)專業(yè)的學(xué)生能熟練使用計算機(jī)解決本專業(yè)的實際問題打下堅實基礎(chǔ)。
(1)《C語言程序設(shè)計》是一門注重實踐的課程,要想真正掌握編程,必須進(jìn)行大量的上機(jī)訓(xùn)練。
(2)《C語言程序設(shè)計》課程內(nèi)容詮釋了結(jié)構(gòu)化程序設(shè)計思想的精髓,有助于學(xué)生理解計算機(jī)解決問題和方式,培養(yǎng)邏輯思維能力。
(3)《C語言程序設(shè)計》是一門教師難講、學(xué)生難學(xué)的課程,需要教師精心設(shè)計教學(xué)方法和教學(xué)思路,幫助學(xué)生逐步培養(yǎng)學(xué)習(xí)編程的興趣,掌握正確的學(xué)習(xí)方法,最終真正具備編寫程序的能力。
(4)《C語言程序設(shè)計》課程是國家計算機(jī)二級考試的重點科目,非計算機(jī)專業(yè)的學(xué)生可以通過該考試獲得計算機(jī)二級證書,對就業(yè)具有一定的幫助。
(1)學(xué)時不足?,F(xiàn)有學(xué)時無法滿足講授全部知識點的需求,因此只能將結(jié)構(gòu)體、共用體和文件等內(nèi)容列為自學(xué)內(nèi)容,而這些內(nèi)容恰恰是二級考試的重點內(nèi)容,因此對學(xué)生通過二級考試有一定的影響。
(2)學(xué)生的學(xué)習(xí)熱情不足。首先是學(xué)生對課程認(rèn)識不夠深入,無法將其與高數(shù)、英語等科目同等重視,因此存在不重視、不感興趣等問題;其次C語言是一門難學(xué)的課程,需要投入一定的時間和精力,而一部分學(xué)生知難而退,不肯付出,也就無法學(xué)好[2]。
(3)學(xué)生的實際動手編程能力不足。由于實驗課時間有限,無法進(jìn)行更為系統(tǒng)的編程訓(xùn)練,因此很多學(xué)生都是停留在能進(jìn)行簡單的程序調(diào)試,完成老師規(guī)定的習(xí)題,而對于解決一些實際問題則顯得力不從心。
(4)教師的授課方式和教學(xué)方法存在不足。對于編程課程而言,最理想的教學(xué)方式就是在課堂上教會學(xué)生如何編寫程序,這是采用幻燈片和板書很難做到的,因此建議教師改進(jìn)教學(xué)方式,多演示編程的過程,描述清楚程序的執(zhí)行過程, 進(jìn)而提高學(xué)生的學(xué)習(xí)興趣和學(xué)習(xí)效果[3]。
(1)組織C語言授課教師進(jìn)行討論,針對教學(xué)內(nèi)容、教學(xué)方法和手段、考核方式等方面集思廣益。適當(dāng)調(diào)整現(xiàn)有的教學(xué)內(nèi)容,如突出函數(shù)、指針等內(nèi)容的講解,幫助學(xué)生掌握C語言的精髓,提高學(xué)生的編程水平。
(2)改進(jìn)了教學(xué)方法,在教學(xué)手段上精心設(shè)計,變枯燥為趣味,激發(fā)學(xué)生的學(xué)習(xí)興趣。在教學(xué)方法上深入研究,化繁為簡,提高課堂教學(xué)的質(zhì)量和效果。加強課堂教學(xué)過程中對編寫程序過程的演示,教會學(xué)生編程;加強對內(nèi)存的分析講解,幫助學(xué)生理解程序的執(zhí)行過程,提高學(xué)生的動手實踐能力和邏輯思維能力[4]。為學(xué)生設(shè)計一套自學(xué)程序設(shè)計的方法,幫助學(xué)生在自學(xué)過程中體驗到編程的樂趣,使他們能增強自信心,提高自身的學(xué)習(xí)能力。
(3)強化實驗教學(xué)環(huán)節(jié),在實驗課環(huán)節(jié)精心設(shè)計案例和作業(yè),布置趣味作業(yè),提升學(xué)生的學(xué)習(xí)主動性,使學(xué)生能有效的將理論和實踐相結(jié)合,提高學(xué)生對所學(xué)知識的整合和綜合運用能力。提高學(xué)生動手編程的能力,進(jìn)一步加強學(xué)生利用C語言解決實際問題的能力。
(4)將考試系統(tǒng)引入實驗教學(xué)過程中,教會學(xué)生熟練使用考試系統(tǒng)軟件進(jìn)行考試,提高學(xué)生熟練使用信息化工具的能力。同時,考試系統(tǒng)也為課程進(jìn)行過程性考核提供了很好的依據(jù)和手段,自動評分功能也節(jié)省了大量人力和時間。
(5) 將微信、QQ等信息化工具引入到輔助教學(xué)環(huán)節(jié),鼓勵教師和學(xué)生使用通訊工具進(jìn)行在線答疑輔導(dǎo),實現(xiàn)隨時提問,隨時解答,也可以進(jìn)行資料的上傳共享,可以將課程中一些常用的教學(xué)資源上傳到群文件中,如課件、Flash動畫、多媒體視頻、國家計算機(jī)級考試復(fù)習(xí)資料等相關(guān)資源,方便學(xué)生下載使用。信息化軟件的應(yīng)用,可以拉近師生的距離,使得學(xué)習(xí)可以無處不在。
(1)興趣為先。讓學(xué)生真正認(rèn)識到學(xué)習(xí)C語言對自身能力培養(yǎng)的益處,實現(xiàn)從“厭學(xué)”到“愿學(xué)”的轉(zhuǎn)變。
(2)方法至上。設(shè)計出符合程序設(shè)計教學(xué)規(guī)律的教學(xué)方法,讓授課教師實現(xiàn)從“難教”到“易教”的轉(zhuǎn)變。
(3)手段為輔。將信息化教學(xué)手段引入到教學(xué)過程中,讓教師和學(xué)生都能體會到“編程”的樂趣。
通過研究和實踐,改進(jìn)了目前課程教學(xué)中存在的不足,不斷完善教學(xué)手段和教學(xué)方法,使《C語言程序設(shè)計》成為一門教師好教、學(xué)生愛學(xué)的課程,通過課程的學(xué)習(xí)和鍛煉,能培養(yǎng)學(xué)生的計算思維和邏輯思維能力,吃苦耐勞的品質(zhì),團(tuán)隊協(xié)作的精神以及“學(xué)以致用”的意識,強化學(xué)習(xí)能力,不“死讀書”和“讀死書”,能夠靈活用知識解決實際問題,全面提升信息素質(zhì)。
[1]何欽銘,陸漢權(quán),馮博琴.計算機(jī)基礎(chǔ)教學(xué)的核心任務(wù)是計算思維能力的培養(yǎng)——《九校聯(lián)盟(C9)計算機(jī)基礎(chǔ)教學(xué)發(fā)展戰(zhàn)略聯(lián)合聲明》解讀[J].中國大學(xué)教學(xué),201O(09).
[2]李坤.高校非計算機(jī)專業(yè)《C語言程序設(shè)計》課程現(xiàn)狀及研究[J].考試周刊,2010(40):161-162.
[3]常玉杰.非計算機(jī)專業(yè)的《C語言程序設(shè)計》教學(xué)探索[J]中國石油大學(xué)勝利學(xué)院學(xué)報,2010,24(1):66-68.
[4]吳亞峰,于復(fù)興.非計算機(jī)專業(yè)理工科C語言程序設(shè)計教學(xué)方法的探索[J].計算機(jī)教育,2009(12):46-47.
張鑫(1979—),男,研究生,副教授,主要從事計算機(jī)基礎(chǔ)教學(xué)和科研。