重慶文理學(xué)院電子電氣工程學(xué)院 李 杰 楊文耀 曾令剛 夏繼宏
針對當(dāng)前電類專業(yè)學(xué)生學(xué)習(xí)《C語言程序設(shè)計》存在的問題,提出采用“理論夠用”原則精選教學(xué)內(nèi)容,增加電路知識相關(guān)的編程實例,并且在教學(xué)中與51單片機(jī)編程相結(jié)合,讓學(xué)生學(xué)習(xí)C語言后對單片機(jī)進(jìn)行簡單控制。通過該教學(xué)改革,可以提高學(xué)生學(xué)習(xí)C語言的興趣,促進(jìn)學(xué)生理解C語言在本專業(yè)中的應(yīng)用,為后續(xù)課程的學(xué)習(xí)打下基礎(chǔ)。
《C語言程序設(shè)計》課程是大多數(shù)理工科專業(yè)的一門專業(yè)基礎(chǔ)必修課,它 在整個編程語言體系中的基礎(chǔ)性,決定了它在教學(xué)中的重要地位(江進(jìn).基于CDIO的高職C語言教學(xué)模式探索與實踐[J].現(xiàn)代計算機(jī),2014(17):32-35)。同時,C語言是世界上應(yīng)用最廣泛的計算機(jī)語言之一,學(xué)好C語言可以為后續(xù)的JAVA,C++,VB,VF,C#等語言的學(xué)習(xí)打下堅實的基礎(chǔ)(楊呈永,黎秋艷.基于混合式C語言程序設(shè)計實驗教學(xué)實踐與研究[J].電子世界,2016(4):37-39)。因此C語言的教學(xué),在高校培養(yǎng)具有較強(qiáng)技術(shù)思維能力和擅長技術(shù)應(yīng)用的應(yīng)用型人才中具有重要作用(孫澤平,漆新貴,何萬國.應(yīng)用型人才培養(yǎng)體系構(gòu)建的實踐與探索——以重慶文理學(xué)院為例[J].重慶高教研究,2013,1(1):54-58)。
對于電子信息科學(xué)與技術(shù),微電子科學(xué)與工程,電氣工程及其自動化等電類專業(yè),《C語言程序設(shè)計》課程也是一門重要的專業(yè)基礎(chǔ)必修課,這些專業(yè)往往在大一上期便開設(shè)了該門課程。通過該課程的學(xué)習(xí),可以使學(xué)生初步了解計算機(jī)編程語言,建立起程序設(shè)計的概念,通過編寫程序,初步掌握程序設(shè)計方法,養(yǎng)成良好的程序設(shè)計風(fēng)格。為《微機(jī)原理與接口技術(shù)》、《單片機(jī)》、《可編程控制技術(shù)》等后繼課程的學(xué)習(xí)奠定基礎(chǔ)。
以我院為例,對于電子信息科學(xué)與技術(shù),微電子科學(xué)與工程,電氣工程及其自動化等電類專業(yè),今后工作的方向主要是偏硬件設(shè)計,學(xué)習(xí)C語言,主要是為后續(xù)單片機(jī)及嵌入式系統(tǒng)的編程打下基礎(chǔ)。當(dāng)前學(xué)生在學(xué)習(xí)《C語言程序設(shè)計》這門課程時,存在如下問題。
(1)課程知識點(diǎn)多,枯燥難學(xué)
《C語言程序設(shè)計》目前開設(shè)在大一上期,理實一體化教學(xué),總共64個學(xué)時。在以往的教學(xué)過程中,學(xué)生普遍反映C語言語法知識點(diǎn)多、概念復(fù)雜、枯燥難學(xué),容易出錯。學(xué)生的畏學(xué)、厭學(xué)情緒使得教學(xué)過程困難重重,嚴(yán)重影響了教學(xué)質(zhì)量,達(dá)不到預(yù)期的教學(xué)效果(楊文耀,陳文波,李杰."理實一體化"在應(yīng)用型本科院校C語言教學(xué)中的應(yīng)用探討[J].信息與電腦(理論版),2017(13):223-224)。
(2)對C語言在專業(yè)領(lǐng)域的應(yīng)用把握不準(zhǔn)
由于《C語言程序設(shè)計》課程開設(shè)在大一,學(xué)生還未開始系統(tǒng)學(xué)習(xí)專業(yè)知識,而教材上的例題多是利用C語言進(jìn)行一些簡單的數(shù)學(xué)運(yùn)算或者是對數(shù)據(jù)的排序等處理,學(xué)生在學(xué)習(xí)后不能明白C語言在電類專業(yè)中有何用途。雖然上課時專業(yè)老師會強(qiáng)調(diào)C語言在本專業(yè)中的重要性,但是大多數(shù)學(xué)生還是對其在專業(yè)領(lǐng)域的應(yīng)用把握不準(zhǔn)。
(3)與后續(xù)課程的連續(xù)性不強(qiáng)
在電類專業(yè)中,需要利用C語言的課程主要是單片機(jī),而單片機(jī)的學(xué)習(xí)是在大三。兩門課程中間相隔兩年,存在連續(xù)性不強(qiáng)的問題。而將C語言課程延后或者將單片機(jī)課程提前都不合適,如果將C語言課程延后,將會延誤學(xué)生的計算機(jī)等級考試。因為大多數(shù)學(xué)生在學(xué)完C語言以后,會投入到計算機(jī)二級C語言考試的準(zhǔn)備中,越早開始學(xué)習(xí)C語言課程,學(xué)生的準(zhǔn)備時間越長,考試機(jī)會越多,通過計算機(jī)等級考試的機(jī)率越大。而且學(xué)生在大一的時候?qū)W習(xí)了C語言,可以在大二的時候利用C語言參加一些比賽。單片機(jī)課程的系統(tǒng)學(xué)習(xí),是以電路分析、數(shù)電、模電、微機(jī)原理等課程作為先導(dǎo)課程,只有先掌握相應(yīng)的電路知識,才能更好地學(xué)習(xí)單片機(jī),所以將單片機(jī)課程的學(xué)習(xí)提前也不合適。
綜上所述,在電類專業(yè)中研究一套能增強(qiáng)學(xué)生學(xué)習(xí)興趣、準(zhǔn)確把握課程定位、與后續(xù)課程較好銜接的C語言教學(xué)方法十分有必要。
針對傳統(tǒng)教學(xué)模式中存在的問題,提出以下解決方法。
(1)堅持“理論夠用”原則
由于C語言語法知識點(diǎn)多、概念復(fù)雜、在有限的課堂時間內(nèi)學(xué)生難以全部掌握。而編程語言往往是只需要掌握其30%的語法,就可以編寫70%以上的程序。C語言也不例外。在C語言教學(xué)過程中堅持“理論夠用”原則,即只需要在課堂上傳授給學(xué)生“必需”和“夠用”的語法知識。所以需要設(shè)置先進(jìn)合理的課程教學(xué)目標(biāo),精選教學(xué)內(nèi)容,使學(xué)生對必須掌握的知識點(diǎn)學(xué)精學(xué)透。
(2)精選上機(jī)編程實例
由于目前所有C語言的教材都是針對各個專業(yè)通用的,里面的實例基本都是一些簡單的數(shù)學(xué)運(yùn)算或者是對數(shù)據(jù)的排序等處理,因此在教學(xué)過程中,可以根據(jù)電類專業(yè)特點(diǎn),準(zhǔn)備一些電路方面的運(yùn)算實例,比如讓學(xué)生編程計算電路中的電壓電流等,讓學(xué)生在學(xué)習(xí)C語言編程的同時,又熟悉了電路知識。
(3)與51單片機(jī)編程相結(jié)合
針對與后續(xù)課程的連續(xù)性不強(qiáng)的問題,采用51單片機(jī)編程與《C語言程序設(shè)計》相結(jié)合的教學(xué)方法進(jìn)行改進(jìn)。
可以在《C語言程序設(shè)計》的數(shù)組這一章以后, 添加51單片機(jī)的C語言編程一章,讓學(xué)生趁熱打鐵,編寫C語言程序以控制51單片機(jī)實現(xiàn)簡單功能。這樣有三大好處:第一,可以將C語言的語法知識學(xué)以致用;第二,可以讓學(xué)生更加明白C語言在本專業(yè)中的應(yīng)用以及重要性;第三,學(xué)生提前接觸單片機(jī)的相關(guān)知識,為部分想提前學(xué)習(xí)單片機(jī)編程的同學(xué)打下基礎(chǔ),也為學(xué)生利用單片機(jī)設(shè)計作品,參加各種電子設(shè)計大賽打下基礎(chǔ)。
但是在《C語言程序設(shè)計》課程中學(xué)習(xí)單片機(jī)編程,并不能替代大三時學(xué)習(xí)單片機(jī)的課程,主要是單片機(jī)課程內(nèi)容也較多,很多知識是學(xué)生需要學(xué)習(xí)了電路、數(shù)電、微機(jī)原理等課程才能夠深入理解。因此在《C語言程序設(shè)計》的數(shù)組這一章以后添加51單片機(jī)的C語言編程一章,內(nèi)容必須精挑細(xì)選,一方面要簡單易懂,讓大一的學(xué)生能夠在幾個課時內(nèi)理解單片機(jī)的基本原理,另一方面也要學(xué)生會編寫程序,對單片機(jī)實現(xiàn)簡單控制。
在電類專業(yè)的C語言程序設(shè)計教學(xué)中,首先根據(jù)“理論夠用”原則精選教學(xué)內(nèi)容,即對傳統(tǒng)的教學(xué)內(nèi)容進(jìn)行壓縮。然后在教學(xué)過程中根據(jù)電類專業(yè)的特點(diǎn),精選與電路知識相關(guān)的編程實例,讓學(xué)生上機(jī)練習(xí)。最后在數(shù)組后插入51單片機(jī)的C語言編程一章,在這一章里簡單介紹單片機(jī)的知識以及51單片機(jī)的C語言編程,讓學(xué)生學(xué)會利用C語言編程控制51單片機(jī)實現(xiàn)簡單功能。通過該教學(xué)改革,可以提高學(xué)生學(xué)習(xí)C語言的興趣,促進(jìn)學(xué)生理解C語言在本專業(yè)中應(yīng)用,為后續(xù)課程的學(xué)習(xí)打下基礎(chǔ)。