幸敏 寧愛民 龍祖連
摘要:文章根據(jù)學(xué)院電子信息專業(yè)人才培養(yǎng)方案,分析了C語言程序設(shè)計(jì)對(duì)電子信息專業(yè)后續(xù)課程學(xué)習(xí)的重要性;提出了幾點(diǎn)C語言程序設(shè)計(jì)課程的教學(xué)改革建議,其中強(qiáng)調(diào)了分階段的遞進(jìn)式學(xué)習(xí)方法和在課程教學(xué)中引入專業(yè)知識(shí)應(yīng)用;學(xué)生應(yīng)以最基本最常用的內(nèi)容為主,加強(qiáng)實(shí)踐環(huán)節(jié),練好基本功。
關(guān)鍵詞:電子信息;C語言程序設(shè)計(jì);實(shí)踐;教學(xué)改革
中圖分類號(hào):TP312 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9416(2019)04-0138-02
0 前言
在電子信息專業(yè)人才培養(yǎng)方案中提到,學(xué)生通過專業(yè)學(xué)習(xí)后,具備電子信息產(chǎn)品研發(fā)、生產(chǎn)管理、售后服務(wù)等崗位能力。學(xué)生將來從事的崗位要求學(xué)生所具備的專業(yè)知識(shí)可以從兩個(gè)方面結(jié)合:一是硬件知識(shí)方面,二是軟件知識(shí)方面。硬件基礎(chǔ)知識(shí)有電路分析基礎(chǔ)、模擬電子技術(shù)和數(shù)字電子技術(shù)課程,軟件基礎(chǔ)知識(shí)就是C語言程序設(shè)計(jì)。他們的后續(xù)課程單片機(jī)應(yīng)用技術(shù)、智能電子產(chǎn)品開發(fā)和嵌入式系統(tǒng)等,其實(shí)就是軟硬件的一個(gè)結(jié)合體。要想在專業(yè)學(xué)習(xí)上實(shí)現(xiàn)簡單的入門,其實(shí)就是實(shí)現(xiàn)軟件和硬件的結(jié)合入門。所以C語言程序設(shè)計(jì)課程的學(xué)習(xí)對(duì)電子信息專業(yè)學(xué)習(xí)有著重要的作用。
1 C程序教學(xué)的情況分析
(1)C語言程序的表現(xiàn)形式是全英文的,需要初學(xué)者牢記一些命令的單詞,幾種典型語句的規(guī)則,甚至還有一些特殊符號(hào)的意義等。對(duì)于高職學(xué)生來說,英語學(xué)習(xí)本來就是一件費(fèi)力的事情,所以一開始看到C語言課程就喪失了一半的信心。
(2)目前C語言程序設(shè)計(jì)的教材是屬于通識(shí)課類教材,里面大量的程序設(shè)計(jì)案例除了說明程序在編寫時(shí)必須遵循的規(guī)則之外,還包含較強(qiáng)的理論知識(shí),比如特殊運(yùn)算符號(hào)++a和a++是兩個(gè)完全不同意思,不同于普通的加法運(yùn)算表示。還有條件語句中,必須把所有可能出現(xiàn)的情況都考慮到,否則就會(huì)出錯(cuò)。甚至還有一些例題要求編寫程序,使 “*”號(hào)按給定的形狀輸出,給定的形狀有四邊形或棱形等(如圖1所示);還有一些求最大公約數(shù),最小公倍數(shù)的。如果學(xué)生不能正確的構(gòu)建求解方法的話,基本上就成了一個(gè)泄氣的皮球。
(3)實(shí)踐環(huán)節(jié)中,學(xué)生只會(huì)把教材中給出的例題,照搬到編譯軟件,運(yùn)行后驗(yàn)證程序是否正確。如果出現(xiàn)錯(cuò)誤,則修改。這時(shí)候出現(xiàn)的錯(cuò)誤100%都是學(xué)生錄入時(shí),打錯(cuò)或遺漏,只需要按照提示,參照課本例題改正即可。學(xué)生如果不能對(duì)知識(shí)點(diǎn)理解消化,當(dāng)碰到作業(yè)或者老師在現(xiàn)有例題上做伸展發(fā)揮時(shí),就會(huì)出現(xiàn)盲目性,要么生硬模仿,要么隨意應(yīng)付,經(jīng)過幾次錯(cuò)誤提醒后,獲得是滿滿的挫敗感,對(duì)進(jìn)一步的學(xué)習(xí)失去信心。更重要的是,教材案例的學(xué)習(xí)與專業(yè)應(yīng)用聯(lián)系不大,絕大部分學(xué)生缺乏自我思考和靈活應(yīng)用知識(shí)的能力。
2 C程序教學(xué)改革建議
(1)強(qiáng)調(diào)C語言程序設(shè)計(jì)課程的重要性。C語言是計(jì)算機(jī)語言中高級(jí)語言的代表,它簡單方便且功能性強(qiáng)、應(yīng)用面廣、效率高、可移植性強(qiáng)。C語言程序設(shè)計(jì)課程是后續(xù) “單片機(jī)應(yīng)用技術(shù)”、“嵌入式系統(tǒng)”、“智能電子產(chǎn)品開發(fā)” 等課程,以及課程實(shí)訓(xùn)項(xiàng)目、畢業(yè)設(shè)計(jì)和職業(yè)技能比賽等環(huán)節(jié)的必備知識(shí),如果想順利完成專業(yè)學(xué)習(xí),必須重視C語言程序設(shè)計(jì)課程的學(xué)習(xí)。
(2)分階段的遞進(jìn)式學(xué)習(xí)。第一階段:規(guī)則的養(yǎng)成階段。在學(xué)生進(jìn)入簡單程序運(yùn)行之前,對(duì)數(shù)據(jù)類型、運(yùn)算符和表達(dá)式等內(nèi)容,采用案例教學(xué),同時(shí)將這些案例制作成微課。課堂上教師強(qiáng)調(diào)程序結(jié)構(gòu)特點(diǎn),解說程序各部分的組成、可修改及替換部分,解決學(xué)生線上學(xué)習(xí)時(shí)遇到的問題,提高學(xué)生對(duì)知識(shí)靈活應(yīng)用的能力。課后學(xué)生通過微課視頻的反復(fù)觀看,進(jìn)一步掌握知識(shí)點(diǎn)。線上線下學(xué)習(xí)的結(jié)合,不但解決了學(xué)生對(duì)C程序?qū)W習(xí)的恐懼感,同時(shí)也避免了教師在知識(shí)傳遞中的被動(dòng)性,大大提高了學(xué)生的學(xué)習(xí)興趣和學(xué)習(xí)效率。
第二階段:簡單程序編寫。有道是“知之非難,行之不易”。C語言課程的學(xué)習(xí),應(yīng)該以實(shí)踐環(huán)節(jié)為主,編寫程序的能力也只有通過上機(jī)實(shí)踐才能養(yǎng)成。對(duì)于初學(xué)者來說,該如何來掌握一些簡單程序的編寫呢?從抄寫(案例程序原樣輸入)到默寫,再到嘗試性的修改,這是一個(gè)循序漸進(jìn)的過程,也是一個(gè)反復(fù)練習(xí)的過程。在這個(gè)過程中,發(fā)現(xiàn)問題、查找原因、解決問題,增強(qiáng)了學(xué)生的學(xué)習(xí)興趣和成就感。
第三階段:復(fù)雜程序閱讀。隨著程序功能的增多,main函數(shù)中的代碼和各種功能的函數(shù)也會(huì)越來越多。所謂復(fù)雜程序?qū)嶋H上是一個(gè)主函數(shù)和多個(gè)功能函數(shù)組成。把程序中各個(gè)功能函數(shù)讀懂,就是化整為零的過程。學(xué)生通過大量閱讀復(fù)雜程序,完成知識(shí)的積累,為后續(xù)課程的學(xué)習(xí)打下基礎(chǔ)。
(3)多種教學(xué)手段結(jié)合。首先在教學(xué)內(nèi)容采用案例形式,教師在課堂教學(xué)中實(shí)現(xiàn)現(xiàn)場程序編寫,并邊寫邊說明相關(guān)知識(shí)點(diǎn),有的知識(shí)點(diǎn)還可以實(shí)現(xiàn)舉一反三,有的可以鼓勵(lì)學(xué)生上臺(tái)補(bǔ)充,有的可以設(shè)置提問等,學(xué)生對(duì)可以馬上看到結(jié)果的演示教學(xué)非常感興趣,與PPT的靜態(tài)講解形成鮮明對(duì)比,課堂氣氛活躍,師生互動(dòng)效果良好。其次,由于一個(gè)程序從編寫到運(yùn)行成功,并不是一步到位的,往往要經(jīng)過多次反復(fù)試驗(yàn)。編好的程序要做到準(zhǔn)確無誤,除了輸入準(zhǔn)確之外還要沒有語法的錯(cuò)誤。所以建立錯(cuò)題庫,將一些學(xué)習(xí)者經(jīng)常犯的小錯(cuò)誤收集起來,或把它們變成改錯(cuò)題等,供同學(xué)們自主學(xué)習(xí)時(shí)參考,這也是提高學(xué)生學(xué)習(xí)能力的一種方式。另外,選拔一些學(xué)習(xí)積極性高,主動(dòng)性強(qiáng)的學(xué)生成立課外學(xué)習(xí)小組,或成為電子協(xié)會(huì)儲(chǔ)備干部,教師在學(xué)習(xí)之余對(duì)他們進(jìn)行輔導(dǎo)。這些學(xué)生在專業(yè)課程的學(xué)習(xí)中成為教師的教學(xué)助手,協(xié)助教師解決在上機(jī)實(shí)踐教學(xué)中和課外學(xué)中時(shí)同學(xué)們遇到的困難;同時(shí)為校內(nèi)外職業(yè)技能比賽培養(yǎng)優(yōu)秀人才。
(4)專業(yè)知識(shí)應(yīng)用導(dǎo)入。由于教材中沒有體現(xiàn)C語言與電子信息專業(yè)課之間的關(guān)系,使學(xué)生誤以為該課程作用不大或僅僅是為了考一個(gè)計(jì)算機(jī)二級(jí)證書。為了消除學(xué)生的誤解,為了能夠在后續(xù)專業(yè)課程中快速上手,對(duì)那些應(yīng)用到專業(yè)課程學(xué)習(xí)的知識(shí)點(diǎn),在C語言程序設(shè)計(jì)課程教學(xué)中加以強(qiáng)調(diào)和導(dǎo)入,讓學(xué)生學(xué)習(xí)更具有目標(biāo)性。比如循環(huán)結(jié)構(gòu),在案例教學(xué)中,我們知道了它可實(shí)現(xiàn)連續(xù)輸出,可完成累加運(yùn)算等,如圖2所示。那么在單片機(jī)學(xué)習(xí)中,它出現(xiàn)頻率最高的地方就是延時(shí)函數(shù),完成延時(shí)功能,如圖3所示。
(5)過程化考核方式引入。C語言程序設(shè)計(jì)課程是一門實(shí)踐性很強(qiáng)的課程,課程的期末考試采用機(jī)試考核;同時(shí)加大平時(shí)成績的占比,平時(shí)成績包括學(xué)習(xí)通平臺(tái)微課學(xué)習(xí)、上機(jī)實(shí)踐作業(yè)和平時(shí)考勤幾個(gè)部分。過程化考核不但避免了學(xué)生對(duì)知識(shí)點(diǎn)考前臨時(shí)抱佛腳的死記硬背,而且明確的指出學(xué)生在學(xué)習(xí)過程中哪個(gè)環(huán)節(jié)薄弱,及時(shí)補(bǔ)漏,激勵(lì)學(xué)生自主學(xué)習(xí)的積極性。
3 結(jié)語
在電子信息專業(yè)學(xué)習(xí)中,C語言程序設(shè)計(jì)課程的學(xué)習(xí)是為后續(xù)課程服務(wù)的,通過該課程的學(xué)習(xí),使學(xué)生能夠掌握C語言的語法、三種基本的結(jié)構(gòu)等內(nèi)容。學(xué)生在學(xué)習(xí)時(shí)應(yīng)該把精力放在最基本、最常用的內(nèi)容上,練好基本功;同時(shí)重視實(shí)踐環(huán)節(jié),可以完成簡單程序的編寫和調(diào)試,在反復(fù)的實(shí)踐中總結(jié),舉一反三,做到活學(xué)活用。另外,教師和學(xué)生都不要局限于教材的內(nèi)容,教師可以根據(jù)后期課程設(shè)計(jì)、技能應(yīng)用,啟發(fā)學(xué)生創(chuàng)新意識(shí),為專業(yè)學(xué)習(xí)打下基礎(chǔ),提高解決實(shí)際問題的能力。
參考文獻(xiàn)
[1] 譚浩強(qiáng).C語言程序設(shè)計(jì)(第四版)[M].北京:清華大學(xué)出版社,2015.
[2] 王靜霞.單片機(jī)應(yīng)用技術(shù)(C語言版)[M].北京:電子工業(yè)出版社,2015.
[3] 潘麗麗,鐘少宏,姜瑜.非計(jì)算機(jī)專業(yè)C語言程序設(shè)計(jì)實(shí)驗(yàn)教學(xué)模式[J].計(jì)算機(jī)教育,2011(18):81-83.
[4] 黃光華.電子信息工程專業(yè)C語言程序設(shè)計(jì)課程“四位一體”教學(xué)模式探索[J].實(shí)踐與探索,2011(35):250.