C語言函數(shù)教學(xué)設(shè)計(jì)與實(shí)踐論文
一、函數(shù)在C語言程序設(shè)計(jì)課程中的地位
函數(shù)部分的學(xué)習(xí)被安排在三大程序控制結(jié)構(gòu)之后,有利于學(xué)生對(duì)函數(shù)知識(shí)點(diǎn)的系統(tǒng)學(xué)習(xí),也能夠使學(xué)生深刻理解結(jié)構(gòu)化程序設(shè)計(jì)的全局思想,在大學(xué)期間開設(shè)《C語言程序設(shè)計(jì)》課程的主要目的是培養(yǎng)學(xué)生充分利用信息時(shí)代的優(yōu)勢(shì),通過編程解決實(shí)際問題的能力。實(shí)際上C程序的基本組成單位是函數(shù),課程所有知識(shí)點(diǎn)的學(xué)習(xí)最終都將落實(shí)到編寫各種函數(shù)來進(jìn)行驗(yàn)證和實(shí)現(xiàn)。因此,學(xué)生只有靈活掌握函數(shù)的運(yùn)用,才能為后續(xù)學(xué)習(xí)奠定堅(jiān)實(shí)基礎(chǔ)。
二、傳統(tǒng)函數(shù)教學(xué)存在的問題
傳統(tǒng)函數(shù)教學(xué)流程如下:
其一,函數(shù)定義及其形式;
其二,函數(shù)形參,return語句,函數(shù)返回值;
其三,函數(shù)聲明,格式,位置;
其四,函數(shù)調(diào)用,函數(shù)實(shí)參等。這種傳統(tǒng)的教學(xué)流程過于強(qiáng)調(diào)函數(shù)語法知識(shí),概念和規(guī)則的講解,這樣導(dǎo)致學(xué)生似懂非懂,與教學(xué)理念相違背,為了適應(yīng)教學(xué)要求,突出以學(xué)生為主,教員為輔的教學(xué)理念,主要探討函數(shù)的教學(xué)設(shè)計(jì)及實(shí)踐[1]。
三、新的函數(shù)教學(xué)設(shè)計(jì)及方法
函數(shù)教學(xué)主要以發(fā)現(xiàn)問題、分析問題、解決問題為思路開展教學(xué),以啟發(fā)、引導(dǎo)、對(duì)比和總結(jié)為輔幫助學(xué)生分析問題解決提出的問題。不僅可以讓學(xué)生帶著興趣學(xué)習(xí),也會(huì)加深學(xué)生對(duì)知識(shí)點(diǎn)的深刻理解及靈活應(yīng)用。本堂課的教學(xué)流程是:交代任務(wù);提出問題、發(fā)現(xiàn)問題、解決問題;鞏固練習(xí)[2]。
第一,提出問題、分析問題、解決問題。學(xué)生只學(xué)過在main函數(shù)中編寫簡單程序,于是向?qū)W生拋出問題:復(fù)雜程序應(yīng)如何進(jìn)行組織和設(shè)計(jì)?在此,給學(xué)生一些時(shí)間利用main函數(shù)來解決給定任務(wù),解決完畢和同學(xué)生一起驗(yàn)證結(jié)果,然后引導(dǎo)學(xué)生分析這種解決方式在實(shí)際中存在的問題,并啟發(fā)學(xué)生思考解決此問題的最佳方法,從而引出學(xué)習(xí)的內(nèi)容——函數(shù)法。接著再次引導(dǎo)學(xué)生用函數(shù)法重新解決給定的任務(wù),最后將解決該任務(wù)的兩種方法進(jìn)行對(duì)比,讓學(xué)生討論、體會(huì)并總結(jié)出復(fù)雜程序的設(shè)計(jì)方法。
第二,鞏固練習(xí)。在這個(gè)環(huán)節(jié),筆者設(shè)計(jì)了帶有陷阱的小例子:通過編寫swap函數(shù)來實(shí)現(xiàn)主函數(shù)中兩個(gè)整數(shù)的交換,給學(xué)生一些時(shí)間討論、驗(yàn)證結(jié)果,引導(dǎo)學(xué)生分析其中的`問題,同時(shí)引出函數(shù)調(diào)用流程這一知識(shí)點(diǎn),并通過動(dòng)畫演示的方式幫助學(xué)生分析函數(shù)調(diào)用流程。
四、函數(shù)教學(xué)實(shí)踐
第一,利用結(jié)構(gòu)化程序設(shè)計(jì)原則設(shè)計(jì)復(fù)雜程序。在main函數(shù)中編程解決問題的基礎(chǔ)上引導(dǎo)學(xué)生獨(dú)立解決給定任務(wù),發(fā)現(xiàn)大部分學(xué)生都能很好地編寫出程序,讓學(xué)生觀察上述代碼,聯(lián)系實(shí)際啟發(fā)引導(dǎo)學(xué)生討論并總結(jié)出如下問題:
其一,代碼冗余;
其二,不易維護(hù);
其三,可靠性差;
其四,可讀性差。
在此基礎(chǔ)上啟發(fā)學(xué)生剖析問題并讓學(xué)生給出解決方案,即main函數(shù)沒有能力獨(dú)自解決整個(gè)任務(wù),這樣很自然引出復(fù)雜C程序組織和設(shè)計(jì)的原則:自頂向下,逐步細(xì)化,模塊化設(shè)計(jì),結(jié)構(gòu)化編碼。在這一原則的指導(dǎo)下,人們可以將任意復(fù)雜任務(wù)分解若干子任務(wù)。程序設(shè)計(jì)時(shí)每個(gè)子任務(wù)看成獨(dú)立模塊,每個(gè)程序設(shè)計(jì)人員分別完成一個(gè)或多個(gè)模塊。人們稱這樣的程序設(shè)計(jì)方法為“模塊法”,在編寫代碼時(shí)每個(gè)模塊對(duì)應(yīng)編寫一個(gè)函數(shù)。最后選擇一種結(jié)構(gòu)化語言對(duì)各個(gè)函數(shù)進(jìn)行編碼,然后在機(jī)器上反復(fù)調(diào)試修改驗(yàn)證。函數(shù)定義形式函數(shù)首部函數(shù)體含義作用及功能功能具體實(shí)現(xiàn)對(duì)應(yīng)知識(shí)點(diǎn)函數(shù)名,函數(shù)形參,返回值如:longfact(intm)聲明語句,執(zhí)行語句第二,函數(shù)定義及調(diào)用。
其一,函數(shù)定義形式;
其二,函數(shù)調(diào)用。通過知識(shí)遷移將以前學(xué)過的使用庫函數(shù)的語句引導(dǎo)學(xué)生總結(jié)出函數(shù)調(diào)用的形式:①無返回值;②帶返回值。在此,詳細(xì)講解實(shí)參與形參的區(qū)別及聯(lián)系,接著給學(xué)生一些時(shí)間利用函數(shù)調(diào)用的方法改寫程序并將兩種解決問題的方法進(jìn)行對(duì)比,讓學(xué)生觀察總結(jié)出程序模塊化的優(yōu)點(diǎn)。
第三,進(jìn)階練習(xí)。布置小任務(wù):編寫swap函數(shù)來實(shí)現(xiàn)main函數(shù)中兩個(gè)整數(shù)交換。在學(xué)生編寫時(shí),教員應(yīng)根據(jù)每位學(xué)生的情況進(jìn)行適當(dāng)指導(dǎo)提示,并及時(shí)糾正學(xué)生們共性的錯(cuò)誤。提示學(xué)生思考計(jì)算機(jī)本身是如何執(zhí)行程序中的main和swap函數(shù)的,引導(dǎo)學(xué)生回答并指正。通過畫圖這種直觀的方式,讓學(xué)生理解函數(shù)調(diào)用的執(zhí)行流程,同時(shí)也加深了學(xué)生對(duì)函數(shù)模塊獨(dú)立性的深刻理解,將抽象的知識(shí)變得通俗易懂。
五、結(jié)束語
綜上所述,C語言中函數(shù)涉及的知識(shí)雜而多樣,在教學(xué)中采用啟發(fā)、引導(dǎo)、對(duì)比等多種教學(xué)方法,不拘泥于知識(shí)點(diǎn)的講解,而是從程序設(shè)計(jì)全局角度出發(fā),以分工合作思想為切入點(diǎn),探討了現(xiàn)實(shí)中復(fù)雜程序編寫多個(gè)函數(shù)來實(shí)現(xiàn)的必要性,發(fā)現(xiàn)問題,解決問題,讓學(xué)生主動(dòng)學(xué)習(xí)的思路展開,實(shí)踐證明該思路符合學(xué)生接受知識(shí)的思維習(xí)慣,這不僅很好地調(diào)動(dòng)學(xué)生學(xué)習(xí)的積極性,從而培養(yǎng)了學(xué)生獨(dú)立思考解決問題的能力。
參考文獻(xiàn):
[1]譚浩強(qiáng).C程序設(shè)計(jì)第三版,北京清華大學(xué)出版社.
[2]高等教育出版社.c語言程序設(shè)計(jì)2015版,高等教育出版社.
【C語言函數(shù)教學(xué)設(shè)計(jì)與實(shí)踐論文】相關(guān)文章:
關(guān)于C語言函數(shù)教學(xué)的論文03-22
C語言for循環(huán)語句教學(xué)設(shè)計(jì)論文07-25
C語言程序設(shè)計(jì)教學(xué)探究論文07-05
C語言課程設(shè)計(jì)教學(xué)探究論文11-29
中職C語言教學(xué)創(chuàng)新與實(shí)踐論文07-04
C語言程序設(shè)計(jì)教學(xué)研究論文09-02
C語言程序設(shè)計(jì)教學(xué)分析與探索論文07-05