公務(wù)員期刊網(wǎng) 論文中心 正文

談應(yīng)用型C語言程序設(shè)計(jì)教學(xué)改革

前言:想要寫出一篇引人入勝的文章?我們特意為您整理了談應(yīng)用型C語言程序設(shè)計(jì)教學(xué)改革范文,希望能給你帶來靈感和參考,敬請閱讀。

談應(yīng)用型C語言程序設(shè)計(jì)教學(xué)改革

摘要:應(yīng)用型本科院校應(yīng)為地方經(jīng)濟(jì)建設(shè)培養(yǎng)和提供實(shí)踐技能型、創(chuàng)新型人才,加強(qiáng)學(xué)生的實(shí)踐動(dòng)手能力。針對C語言課程教學(xué)存在的問題及學(xué)生遇到的困難,提出系統(tǒng)性認(rèn)識(shí)C程序基本結(jié)構(gòu)、啟發(fā)式教學(xué)、案例分析教學(xué)+項(xiàng)目驅(qū)動(dòng)模式的實(shí)踐教學(xué)體系。通過實(shí)踐教學(xué)改革,學(xué)生主動(dòng)參與學(xué)習(xí),提高了學(xué)生學(xué)習(xí)的興趣和學(xué)習(xí)的積極性,培養(yǎng)了學(xué)生分析問題、解決問題的能力,增強(qiáng)了學(xué)生的實(shí)踐創(chuàng)新意識(shí)。

關(guān)鍵詞:應(yīng)用型高校;C語言;編程思維;實(shí)踐教學(xué)改革

引言

C語言程序設(shè)計(jì)幾乎是工科類院校各專業(yè)的公共基礎(chǔ)課程,也是應(yīng)用型本科院校理工科專業(yè)學(xué)習(xí)計(jì)算機(jī)程序設(shè)計(jì)的首選課程。它的目標(biāo)是培養(yǎng)學(xué)生的計(jì)算機(jī)編程思維,積累程序設(shè)計(jì)中常用的、經(jīng)典的算法,達(dá)到熟練使用C語言編程,培養(yǎng)分析問題、解決實(shí)際問題的能力。由于C語言程序設(shè)計(jì)課程內(nèi)容量大,知識(shí)點(diǎn)抽象、枯燥,理解困難,加大學(xué)習(xí)難度,學(xué)生難以上手,削弱了其學(xué)習(xí)興趣,導(dǎo)致學(xué)生參與的意愿削弱,感受不到知識(shí)的價(jià)值,學(xué)生的編程思想難以培養(yǎng),分析問題解決問題的能力得不到提高。因此,筆者提出C語言程序設(shè)計(jì)實(shí)踐教學(xué)改革,探索一種以案例分析為主,結(jié)合項(xiàng)目實(shí)戰(zhàn),注重培養(yǎng)學(xué)生計(jì)算思維、編程思想[1],提高實(shí)踐動(dòng)手能力的教學(xué)方法。

1C語言教學(xué)中存在的問題

傳統(tǒng)的C語言程序設(shè)計(jì)教學(xué)注重知識(shí)內(nèi)容的講授,忽略了C語言程序的實(shí)際應(yīng)用,使學(xué)生陷入知識(shí)的細(xì)節(jié)。雖然經(jīng)過一段時(shí)間基礎(chǔ)知識(shí)的學(xué)習(xí)和經(jīng)典算法的練習(xí),學(xué)生可以看懂、修改和編寫簡單的程序,但是面對于一個(gè)較難的題目或者實(shí)際問題,學(xué)生卻難以下手,不會(huì)分析問題、聯(lián)系生活實(shí)踐解決問題,自主創(chuàng)新[2]的意識(shí)更是難以培養(yǎng)。

1.1缺少課程間相互聯(lián)系

C語言課程是大學(xué)生入校以來第一門程序設(shè)計(jì)語言,對程序的計(jì)算思維不理解,沒有制定學(xué)習(xí)目標(biāo)、學(xué)習(xí)計(jì)劃,盲目學(xué)習(xí),缺乏主動(dòng)性。學(xué)生很少從課程的培養(yǎng)目的、培養(yǎng)能力出發(fā),很少考慮這門課程的學(xué)習(xí)對今后課程和工作的影響;沒有一個(gè)全面的、正確的認(rèn)識(shí),總覺得能及格就可以了。在學(xué)習(xí)的過程中,學(xué)生缺少前后課程之間的相互聯(lián)系,不能把已學(xué)的課程和現(xiàn)學(xué)課程聯(lián)系起來,從計(jì)算機(jī)的工作過程出發(fā)來考慮程序的執(zhí)行過程,進(jìn)一步來理解、學(xué)習(xí)C語言程序的結(jié)構(gòu)組成,對本門課程缺乏系統(tǒng)性的認(rèn)識(shí)。

1.2“填鴨式”教學(xué)模式

課堂傳授以教師講授為主,老師覺得重要的知識(shí)點(diǎn),學(xué)生卻感受不到知識(shí)的價(jià)值;主動(dòng)參與學(xué)習(xí)的意愿和興趣不濃,被動(dòng)的接受知識(shí);課堂采取“先理論,后實(shí)踐”的教學(xué)模式。只有知識(shí)內(nèi)容的滿堂灌,學(xué)生的學(xué)習(xí)熱情沒有被調(diào)動(dòng),缺乏與學(xué)生的互動(dòng)交流,難以了解學(xué)生對程序的理解情況。課本講述的內(nèi)容主要是純數(shù)學(xué)的抽象案例,缺乏實(shí)際聯(lián)系、實(shí)際應(yīng)用,學(xué)生理解比較困難。為了完成教學(xué)任務(wù),追求教學(xué)進(jìn)度,內(nèi)容講得過多,實(shí)際操作少,學(xué)生來不及消化和吸收。這種教學(xué)模式下,學(xué)生上課無求知欲、無興趣,部分學(xué)生昏昏欲睡,聽課如聽天書;有的學(xué)生即使認(rèn)真做筆記,課后合上筆記也沒有深刻的印象。這種教學(xué)模式只能引發(fā)淺層學(xué)習(xí),即使學(xué)生對知識(shí)點(diǎn)了如指掌,遇到真實(shí)的情境卻未必能夠靈活運(yùn)用。因此,這種教學(xué)模式需要很大程度的改進(jìn)。

1.3教學(xué)內(nèi)容細(xì)節(jié)化

傳統(tǒng)的教學(xué)注重基本概念、語法等知識(shí)點(diǎn),教學(xué)內(nèi)容瑣碎化、細(xì)節(jié)化。利用大量課時(shí)講解基本概念,如常量、變量、數(shù)據(jù)類型、表達(dá)式等概念,記憶的知識(shí)過多,知識(shí)過于瑣碎、細(xì)節(jié)化。學(xué)生即使掌握所學(xué)知識(shí)點(diǎn),很難與實(shí)際問題聯(lián)系起來,解決問題。學(xué)生碰到問題,無從下手,產(chǎn)生畏難心理,進(jìn)而對課程的學(xué)習(xí)失去興趣。

2思考與建議

2.1系統(tǒng)性理解

C語言程序基本結(jié)構(gòu)1946年美籍匈牙利數(shù)學(xué)家馮•諾依曼提出程序存儲(chǔ)原理,程序如同數(shù)據(jù)來處理,并確定了程序存儲(chǔ)計(jì)算機(jī)的三大組成部件(I/O設(shè)備、存儲(chǔ)器、處理器)和基本工作方法。計(jì)算機(jī)與程序設(shè)計(jì)的關(guān)系:計(jì)算機(jī)的工作過程(IPO),輸入(Input):程序用到的數(shù)據(jù);處理(Process);編寫的程序放于存儲(chǔ)器中用于數(shù)據(jù)處理操作;輸出(Output):對處理或計(jì)算后的結(jié)果進(jìn)行輸出。C語言結(jié)構(gòu)中定義變量相當(dāng)于計(jì)算機(jī)分配存儲(chǔ)空間(存儲(chǔ)器);初始化相當(dāng)于輸入設(shè)備;程序處理問題的過程(算法)相當(dāng)于處理器;C語言輸出相當(dāng)于計(jì)算機(jī)的輸出設(shè)備。計(jì)算機(jī)硬件結(jié)構(gòu)與C語言程序基本結(jié)構(gòu)對照關(guān)系,如圖1所示。

2.2深入淺出,啟發(fā)式教學(xué)

在教學(xué)過程中,教師注重引導(dǎo)、深入淺出地講解,采用啟發(fā)式[3]教學(xué)法來幫助學(xué)生理解程序的邏輯,訓(xùn)練計(jì)算思維能力。筆者舉例:求全班50個(gè)同學(xué)C語言課程的平均成績及最高分。首先,先從簡單的題目出發(fā),輸入兩個(gè)學(xué)生的成績,求其平均分,其代碼如下。其次,提出問題:輸入50個(gè)學(xué)生的成績,求其平均分?寫出代碼為:然后,再提出問題:要反復(fù)地進(jìn)行輸入50個(gè)同學(xué)的成績,然后累加,這種方法是否合適?計(jì)算機(jī)的快速、便捷有沒有應(yīng)用?算法太過冗余,降低程序的執(zhí)行效率,有沒有更好的辦法可以解決此問題,我們會(huì)想到反復(fù)地進(jìn)行某個(gè)操作,利用循環(huán),其代碼為:然后,問題又來了:如果要進(jìn)行求最高分、排序等其他操作,使用一個(gè)變量能不能解決問題?優(yōu)點(diǎn):用一個(gè)score變量通過循環(huán)可以解決以上問題,避免重復(fù),浪費(fèi)內(nèi)存空間,提高程序的效率;缺點(diǎn):它只能保存最后一個(gè)學(xué)生的成績。要保存大量同類型的數(shù)據(jù),順理成章引出數(shù)組,其代碼為:深入淺出,啟發(fā)式教學(xué)能增強(qiáng)課堂趣味性,學(xué)生好理解,容易進(jìn)入學(xué)習(xí)狀態(tài),所學(xué)知識(shí)容易掌握,能提高學(xué)生學(xué)習(xí)的興趣和學(xué)習(xí)效果。通過上述過程一步步引導(dǎo)學(xué)生,既鞏固了以前所學(xué)知識(shí)內(nèi)容又啟發(fā)了學(xué)生思維,使其容易理解容易學(xué)習(xí)。

2.3“案例分析教學(xué)+項(xiàng)目驅(qū)動(dòng)”模式

依據(jù)人才培養(yǎng)目標(biāo)、教學(xué)大綱、教學(xué)目的及要求,教師設(shè)計(jì)、規(guī)劃課堂內(nèi)容[4],選取多個(gè)恰當(dāng)?shù)陌咐?,以案例分析為重點(diǎn),結(jié)合項(xiàng)目驅(qū)動(dòng)深入淺出、啟發(fā)式引導(dǎo),完成整個(gè)教學(xué)內(nèi)容。在案例的選取當(dāng)中,要以學(xué)生熟悉的、感興趣的、學(xué)生日常生活相接近的問題,并結(jié)合章節(jié)內(nèi)容將知識(shí)點(diǎn)涵蓋其中,具有一定的難度、深度,引導(dǎo)學(xué)生學(xué)習(xí),進(jìn)一步學(xué)習(xí)相應(yīng)的知識(shí)點(diǎn)。在學(xué)習(xí)案例的過程中,不斷地積累經(jīng)典算法,學(xué)習(xí)編程思想,學(xué)習(xí)怎樣分析問題、解決問題。課堂堅(jiān)持“精講多練”,每個(gè)案例讓學(xué)生通過特定的事件情景進(jìn)行分析問題、解決實(shí)際問題,最終用C語言實(shí)現(xiàn),從而培養(yǎng)學(xué)生運(yùn)用理論知識(shí),了解編程思維,通過動(dòng)手實(shí)踐[5],培養(yǎng)動(dòng)手能力,符合應(yīng)用型院校人才培養(yǎng)目標(biāo)要求,為培養(yǎng)應(yīng)用型人才打下堅(jiān)實(shí)的基礎(chǔ)。通過大量的案例分析學(xué)習(xí),學(xué)生積累一定的算法,了解編程思維,掌握怎樣分析問題、怎樣把實(shí)際生活中的問題轉(zhuǎn)換成程序代碼,進(jìn)而解決問題。但是學(xué)生所學(xué)知識(shí)點(diǎn)比較零碎、沒有系統(tǒng)性,沒有切身體會(huì)到C程序設(shè)計(jì)的真正用處。教師在部分章節(jié)具體案例選取中下功夫,設(shè)計(jì)案例內(nèi)容與某個(gè)總項(xiàng)目有著密切的關(guān)聯(lián)。學(xué)生學(xué)完整個(gè)課程后,把相關(guān)案例結(jié)合起來,組合成一個(gè)總項(xiàng)目。通過整個(gè)項(xiàng)目完成,學(xué)生能看到具體的效果,切身體會(huì),獲得成就感;學(xué)生不僅加深和鞏固了所學(xué)知識(shí)點(diǎn),把前面學(xué)習(xí)的比較瑣碎的知識(shí)串聯(lián)起來,而且更加有條理、對C程序設(shè)計(jì)這門課程有了系統(tǒng)的深刻的認(rèn)識(shí),從而學(xué)會(huì)分析問題、思考解決問題及動(dòng)手編寫程序的能力。

3總結(jié)

通過案例分析教學(xué)+項(xiàng)目驅(qū)動(dòng),學(xué)生不僅掌握了知識(shí)點(diǎn)的學(xué)習(xí),而且遇到問題學(xué)會(huì)分析,思考解決問題的方案,畫流程圖,轉(zhuǎn)換成程序代碼,調(diào)試驗(yàn)證結(jié)果,理論結(jié)合實(shí)踐,用學(xué)到的理論知識(shí)解決實(shí)踐問題,學(xué)生體會(huì)到知識(shí)的價(jià)值、學(xué)習(xí)的收獲,能積極主動(dòng)參與,從而培養(yǎng)其分析問題、解決問題的能力。

參考文獻(xiàn)

[1]肖琳,郭李華.應(yīng)用型本科院校非計(jì)算機(jī)專業(yè)C語言程序設(shè)計(jì)教學(xué)改革探討[J].南昌教育學(xué)院學(xué)報(bào),2015,30(5):43-45.

[2]王曉銀,孟虎,李海玲,等,應(yīng)用型本科院校計(jì)算機(jī)專業(yè)硬件基礎(chǔ)課程實(shí)踐教學(xué)改革探索[J].微型電腦應(yīng)用,2018,34(9):20-22.

[3]鄧云,朱海燕.基于Arduino單片機(jī)項(xiàng)目的C語言實(shí)程序設(shè)計(jì)教學(xué)[J].廣西教育,2017(19):158-160.

[4]陳得友,郭雯雯.應(yīng)用型本科院校計(jì)算機(jī)專業(yè)《C程序設(shè)計(jì)》實(shí)踐教學(xué)改革探索[J].產(chǎn)業(yè)與科技論壇,2015,14(11):149-150.

[5]羅鵬,唐永剛,郝保明,等.應(yīng)用型本科院校非計(jì)算機(jī)專業(yè)C語言課程教學(xué)方法研究[J].銅仁學(xué)院學(xué)報(bào),2016,18(4):97-100.

作者:王倩麗 單位:西安航空學(xué)院