林震 劉俊景 侯杏娜 陳壽宏
【摘 要】本文針對(duì)《C 語(yǔ)言程序設(shè)計(jì)》實(shí)驗(yàn)課程在教學(xué)中存在的一些問(wèn)題,提出了基于工程的實(shí)驗(yàn)教學(xué)模式的改革探索,將實(shí)驗(yàn)內(nèi)容與工程項(xiàng)目相結(jié)合來(lái)設(shè)置學(xué)生的學(xué)習(xí)內(nèi)容,最后對(duì)教學(xué)改革所取得的效果進(jìn)行了分析與總結(jié)。
【關(guān)鍵詞】C 語(yǔ)言;工程;實(shí)驗(yàn)教學(xué)
1 目前C語(yǔ)言實(shí)驗(yàn)教學(xué)存在的問(wèn)題
C語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)教學(xué)是提高編程能力非常重要的一個(gè)環(huán)節(jié),特別是在國(guó)家提倡“卓越工程師”的背景下,提高學(xué)生的動(dòng)手編程與軟件開(kāi)發(fā)能力顯得更為重要。但目前不管是在實(shí)驗(yàn)內(nèi)容的設(shè)置上還是教學(xué)網(wǎng)絡(luò)資源的建設(shè)上都存在一些需要迫切解決的問(wèn)題,主要表現(xiàn)為如下幾方面:
(1)學(xué)生覺(jué)得相應(yīng)的語(yǔ)法知識(shí)并不難,聽(tīng)老師分析講解例題時(shí)也覺(jué)得很明白,但真正讓他們自己動(dòng)手編程解決實(shí)際問(wèn)題時(shí),有相當(dāng)一部分學(xué)生感到無(wú)從下手。
(2)大多數(shù)教材和理論課堂教學(xué)重點(diǎn)放在了C語(yǔ)言的“語(yǔ)法研究”上,而課程考核的考試內(nèi)容大多也都無(wú)法逃脫“語(yǔ)法”的束縛,最后形成學(xué)生“懂語(yǔ)法、會(huì)做題,但不會(huì)編程序”的教學(xué)后果。
(3)上機(jī)課安排的驗(yàn)證性實(shí)驗(yàn)比例過(guò)多,實(shí)驗(yàn)內(nèi)容缺少總體應(yīng)用的項(xiàng)目。學(xué)生程序出錯(cuò)后不是通過(guò)調(diào)試來(lái)改錯(cuò),而是逐行對(duì)照書(shū)上的內(nèi)容進(jìn)行糾正,因此導(dǎo)致學(xué)生不會(huì)調(diào)試程序,也不會(huì)編寫(xiě)程序,更談不上開(kāi)發(fā)一個(gè)具體的工程項(xiàng)目。
因此,探索對(duì)C語(yǔ)言實(shí)驗(yàn)教學(xué)的改革,對(duì)提高該課程的教學(xué)質(zhì)量有著重要的作用。
2 C語(yǔ)言實(shí)驗(yàn)教學(xué)改革探索
本文從實(shí)驗(yàn)教學(xué)方法和實(shí)驗(yàn)內(nèi)容的設(shè)置上進(jìn)行改革,讓學(xué)生通過(guò)具體項(xiàng)目的開(kāi)發(fā)來(lái)了解項(xiàng)目的開(kāi)發(fā)流程和開(kāi)發(fā)要求,使學(xué)生逐步具備工程開(kāi)發(fā)應(yīng)用的能力。具體改革措施如下:
(1)在C語(yǔ)言基礎(chǔ)學(xué)習(xí)階段,對(duì)C語(yǔ)言程序設(shè)計(jì)中的基本知識(shí)結(jié)合具體的例子進(jìn)行分析,讓學(xué)生掌握C程序設(shè)計(jì)的語(yǔ)法及初步的調(diào)試方法,例如,對(duì)于如何調(diào)試程序以及如何在調(diào)試中添加和消除斷點(diǎn),以便提高調(diào)試效率,找出程序中存在的邏輯錯(cuò)誤,初學(xué)者常常會(huì)搞不清楚。我們?cè)谡n堂上就只講解單步跟蹤調(diào)試,讓學(xué)生先對(duì)調(diào)試有一個(gè)初步的印象,當(dāng)學(xué)生掌握了單步跟蹤調(diào)試之后,我們?cè)诤竺娴膶W(xué)習(xí)中再講解如何設(shè)置斷點(diǎn)等較復(fù)雜的調(diào)試方法,這樣循序漸進(jìn)地去學(xué)習(xí),就不會(huì)讓學(xué)生有畏難情緒。同時(shí),在講解這些知識(shí)點(diǎn)時(shí),利用錄制軟件將這些講解錄制成教學(xué)視頻,發(fā)布在C語(yǔ)言學(xué)習(xí)網(wǎng)站上,有了這些教學(xué)視頻,學(xué)生在課后就可以上網(wǎng)反復(fù)地去聽(tīng),直到弄懂為止,從而達(dá)到自己能動(dòng)手調(diào)試的能力。
(2)在C語(yǔ)言學(xué)習(xí)進(jìn)階階段,將一個(gè)簡(jiǎn)易的工程項(xiàng)目逐步分解來(lái)做為教學(xué)內(nèi)容。在學(xué)習(xí)完C語(yǔ)言基礎(chǔ)知識(shí)之后,我們采用工程項(xiàng)目分解教學(xué)法,將一個(gè)簡(jiǎn)易的學(xué)生成績(jī)管理系統(tǒng)逐步分解成各個(gè)實(shí)驗(yàn)內(nèi)容,由淺入深、由易到難,讓學(xué)生體驗(yàn)項(xiàng)目開(kāi)發(fā)的流程。隨著項(xiàng)目任務(wù)的逐步實(shí)現(xiàn)和項(xiàng)目功能的不斷完善,讓學(xué)生體會(huì)到逐步實(shí)現(xiàn)目標(biāo)的喜悅,增強(qiáng)了學(xué)生的自信心。例如,學(xué)生成績(jī)管理系統(tǒng)的登錄,可以讓學(xué)生領(lǐng)會(huì)if…else選擇結(jié)構(gòu)的使用,學(xué)生成績(jī)的排序功能可以讓學(xué)生理解“冒泡”排序、for或while循環(huán)以及數(shù)組的使用,學(xué)生成績(jī)?yōu)g覽功能可以讓學(xué)生學(xué)會(huì)函數(shù)的使用、結(jié)構(gòu)體的定義和文件指針的利用。從而加深了學(xué)生對(duì)現(xiàn)實(shí)問(wèn)題的分析、分解、實(shí)現(xiàn)的一般的軟件開(kāi)發(fā)流程。
(3)建立一個(gè)C語(yǔ)言學(xué)習(xí)網(wǎng)站,在網(wǎng)站上對(duì)經(jīng)典程序源碼進(jìn)行解釋?zhuān)岣邔W(xué)生的程序閱讀能力。對(duì)于那些基礎(chǔ)比較好的學(xué)生,在C語(yǔ)言的學(xué)習(xí)過(guò)程中常常有“吃不飽”的情況,為了滿足這部分學(xué)生的求知欲,我們?cè)贑語(yǔ)言學(xué)習(xí)網(wǎng)站上提供了學(xué)生比較感興趣的經(jīng)典程序代碼和各類(lèi)C語(yǔ)言程序設(shè)計(jì)大賽的題目,如五子棋和貪吃蛇游戲,從而可以引導(dǎo)學(xué)生閱讀程序的源碼,提高程序閱讀能力,同時(shí)提高學(xué)生學(xué)習(xí)的興趣,最終在讀懂程序的基礎(chǔ)上可以修改程序和完善程序。而C語(yǔ)言大賽的題目又可以激發(fā)學(xué)生的求知欲和向更深知識(shí)學(xué)習(xí)的探索欲。
(4)基于C語(yǔ)言,結(jié)合學(xué)生所學(xué)的專(zhuān)業(yè)知識(shí),為學(xué)生提供相應(yīng)的程序開(kāi)發(fā)思路。很多學(xué)生學(xué)了C語(yǔ)言后感覺(jué)離真正的軟件開(kāi)發(fā)很遠(yuǎn),主要是他們不懂現(xiàn)在軟件的開(kāi)發(fā)技術(shù),或者說(shuō)不知道C語(yǔ)言與自己所學(xué)專(zhuān)業(yè)有什么關(guān)聯(lián),不知道還要學(xué)習(xí)什么樣的相關(guān)課程后才具有當(dāng)前軟件的開(kāi)發(fā)能力。我們?cè)贑語(yǔ)言學(xué)習(xí)網(wǎng)站上給學(xué)生介紹當(dāng)前軟件的開(kāi)發(fā)流程,提供與學(xué)生所學(xué)專(zhuān)業(yè)相關(guān)的軟件開(kāi)發(fā)知識(shí),讓學(xué)生知道通過(guò)后續(xù)課程的學(xué)習(xí)后利用C語(yǔ)言所能做到的事情,例如,對(duì)于數(shù)學(xué)相關(guān)專(zhuān)業(yè),可以用C語(yǔ)言來(lái)解決如求定積分及牛頓迭代算法等問(wèn)題,從而激發(fā)起學(xué)生學(xué)習(xí)C語(yǔ)言的興趣和熱情。
3 結(jié)束語(yǔ)
實(shí)踐表明,通過(guò)基于工程的教學(xué)改革嘗試,不僅潛移默化地滲透了軟件工程的思想,而且重點(diǎn)培養(yǎng)了學(xué)生分析問(wèn)題、解決問(wèn)題的能力,學(xué)生的編程能力有了明顯的進(jìn)步,學(xué)生對(duì)C語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)這一門(mén)課程學(xué)習(xí)的主動(dòng)性和積極性都有了很大的提高。
【參考文獻(xiàn)】
[1]林震.高校C語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)教學(xué)的改革與探索[J].科技信息,2011,27.
[2]陳戰(zhàn)勝.C語(yǔ)言課程創(chuàng)新教學(xué)模式研究與實(shí)踐[J].教育教學(xué)論壇,2015,1.
[3]汪繁榮.培養(yǎng)應(yīng)用型人才的C語(yǔ)言教材改革探索[J].教育教學(xué)論壇,2016,4.