王亮
【摘 要】針對《C語言程序設(shè)計》課程中循環(huán)結(jié)構(gòu)的教學(xué)難點,本文將“項目導(dǎo)向,任務(wù)驅(qū)動”引入到教學(xué)中,從而加強(qiáng)理論聯(lián)系實際,提升課程的趣味性,激發(fā)學(xué)生學(xué)習(xí)興趣。
【關(guān)鍵詞】教學(xué)案例;C語言;任務(wù)驅(qū)動
中圖分類號: TP312.1-4 文獻(xiàn)標(biāo)識碼: A 文章編號: 2095-2457(2018)01-0060-002
【Abstract】In view of the “C language program design” course teaching difficulty of the loop structure, this article will “project orientation, the task drive” is introduced into teaching, so as to strengthen the theory with practice, enhance the lessons more interesting, stimulate students interest in learning.
【Key words】Teaching cases; C language; Task driven
0 引言
C語言是計算機(jī)專業(yè)基礎(chǔ)課程,為提升學(xué)生編程實戰(zhàn)能力,在《循環(huán)結(jié)構(gòu)》章節(jié)的教學(xué)中引入“以項目為導(dǎo)向,以任務(wù)為驅(qū)動”的教學(xué)模式。
1 教學(xué)案例呈現(xiàn)
1.1 教學(xué)重難點
■教學(xué)重點為while循環(huán),do-while循環(huán)和for循環(huán);
教學(xué)難點為理解并熟練運用while循環(huán)、do-while循環(huán)和for循環(huán)。
1.2 教學(xué)環(huán)境準(zhǔn)備
■教學(xué)環(huán)境準(zhǔn)備
(1)具有多媒體廣播教學(xué)系統(tǒng)的計算機(jī)機(jī)房,一人一機(jī)
(2)計算機(jī)安裝Windows 7系統(tǒng)
(3)安裝 VC++ 6.0編程開發(fā)工具軟件
■課件準(zhǔn)備
(1)課件制作是以教材為藍(lán)本,結(jié)合教學(xué)目標(biāo)和教案
(2)注意圖片、文字、色彩等要素之間的整體性與協(xié)調(diào)性
■課前復(fù)習(xí)與預(yù)習(xí)
(1)復(fù)習(xí)If語句和switch case語句
(2)預(yù)習(xí)while、do-while、for循環(huán)語句的基本語法和關(guān)鍵字
1.2 教學(xué)內(nèi)容:
■指導(dǎo)部分-模擬“英雄聯(lián)盟”游戲中對戰(zhàn)過程;
■練習(xí)部分-模擬“英雄聯(lián)盟”游戲中購買商品過程。
1.4 教學(xué)過程
本次課教學(xué)過程分為7個環(huán)節(jié):情景引入、確定任務(wù)、演示操作(前三環(huán)節(jié)以講師講解,引導(dǎo)為主)、案例實訓(xùn)、指導(dǎo)探索(以學(xué)生實訓(xùn)為主)、程序點評和總結(jié)評價(后二環(huán)節(jié)以師生討論為主)。
■情景引入(時間:3分鐘)
首先導(dǎo)入情景問題:現(xiàn)在有很多同學(xué)喜歡玩“英雄聯(lián)盟”游戲,請問在兩位英雄對戰(zhàn)過程中,當(dāng)滿足什么條件時,對戰(zhàn)才結(jié)束?可以用什么結(jié)構(gòu)描述重復(fù)對打過程,以及用什么語句來判斷對戰(zhàn)結(jié)束呢?
設(shè)計意圖:通過此問題,了解學(xué)生對知識點if語句和循環(huán)結(jié)構(gòu)掌握情況,為引入本次課程內(nèi)容做一個鋪墊。
■確定任務(wù)
(1)指導(dǎo)部分(時間:2分鐘)
模擬“英雄聯(lián)盟”中英雄對戰(zhàn)過程,其效果如圖1所示。
圖1 “英雄對戰(zhàn)過程”圖
設(shè)計意圖:通過模擬游戲?qū)?zhàn)過程案例,激發(fā)學(xué)生學(xué)習(xí)興趣。
(2)練習(xí)部分(時間:2分鐘)
模擬“英雄聯(lián)盟”中購買商品過程,效果如圖2所示:
設(shè)計意圖:1)通過模擬游戲購買商品案例,激發(fā)學(xué)生學(xué)習(xí)興趣。2)通過練習(xí),進(jìn)一步加深對循環(huán)知識的掌握。
■演示操作
(1)指導(dǎo)部分
1)講解指導(dǎo)實現(xiàn)思路(時間:5分鐘)
設(shè)計意圖:講解思路,旨在讓學(xué)生理解程序邏輯。
2)講解關(guān)鍵代碼(時間:5分鐘)
在展示同時,提醒學(xué)生要在編寫程序過程中,對關(guān)鍵代碼添加注釋。并導(dǎo)入一個案例:有一個程序員開發(fā)完一個軟件,但無任何注釋,若他跳槽離職,后期公司對軟件升級時,其他程序員很難理解程序,導(dǎo)致開發(fā)進(jìn)度緩慢。
設(shè)計意圖:展示關(guān)鍵代碼,旨在讓學(xué)生加深程序理解;添加注釋,旨在讓學(xué)生養(yǎng)成良好編程規(guī)范,既有助于理解和程序維護(hù),又符合未來軟件開發(fā)工程師崗位的職業(yè)要求。
(2)練習(xí)部分(5分鐘)
講解練習(xí)實現(xiàn)思路
設(shè)計意圖:講解思路,旨在讓學(xué)生理解程序邏輯
■案例實訓(xùn)
在演示操作環(huán)節(jié)結(jié)束后,讓學(xué)生以小組為單位進(jìn)行上機(jī)實訓(xùn),指導(dǎo)部分20分鐘,練習(xí)部分25分鐘。
整個實訓(xùn)過程分為4個階段:
(1)分配任務(wù):首先由小組長分配任務(wù)
(2)任務(wù)編碼:以小組為單位進(jìn)行編碼,并進(jìn)行小組討論,共同解答。
(3)過程管理:在實訓(xùn)的過程中,組長負(fù)責(zé)監(jiān)督與輔導(dǎo),教師負(fù)責(zé)巡查與指導(dǎo)。
(4)提交程序:由小組長負(fù)責(zé)收齊程序提交。
設(shè)計意圖:以學(xué)生為主,激發(fā)學(xué)生主動學(xué)習(xí)與思考能力,并培養(yǎng)學(xué)生團(tuán)隊協(xié)作能力和溝通能力。
■指導(dǎo)探索(時間:10分鐘)
完成編碼任務(wù)后,向?qū)W生提出思考問題:請問while和do-while兩者有何區(qū)別嗎?能將指導(dǎo)程序和練習(xí)程序分別用do-while循環(huán)和for循環(huán)實現(xiàn)嗎?你認(rèn)為for循環(huán)有何特點?要求由各組長組織各組成員進(jìn)行探討。
設(shè)計意圖:同一案例用不同程序邏輯實現(xiàn),既有助于拓展學(xué)生思維,又符合未來軟件開發(fā)工程師崗位對邏輯思維能力的職業(yè)要求。
■程序點評(時間:10分鐘)
程序完成后,由講師和學(xué)生對優(yōu)秀小組程序進(jìn)行點評。
設(shè)計意圖:通過點評,既在學(xué)生之間形成良性競爭,又能激發(fā)學(xué)生學(xué)習(xí)積極性。符合未來軟件開發(fā)工程師崗位對具有良性競爭意識的要求。
■總結(jié)評價(時間:3分鐘)
結(jié)合學(xué)生完成案例情況,對本節(jié)課的教學(xué)過程進(jìn)行總結(jié),指正學(xué)生在源程序書寫中存在的共性問題。例如,(1)死循環(huán),(2)無注釋,(3)編碼格式不規(guī)范,(4)變量命名不規(guī)范。
【參考文獻(xiàn)】
[1]于寅驊.C語言程序設(shè)計教學(xué)實踐與思考[J].江蘇第二師范學(xué)院學(xué)報,2017,33(06):44-47.
[2]陳承源,馮驪驍.C語言課程設(shè)計實踐教學(xué)改革研究[J].軟件工程,2017,20(08):44-46.
[3]崔晗,彭文娟.淺談C語言理論教學(xué)與實驗教學(xué)相結(jié)合方法[J].現(xiàn)代計算機(jī)(專業(yè)版),2017(27):16-19.