摘要:目前各高校均開設(shè)C語言程序設(shè)計課程,該課程教學(xué)內(nèi)容抽象,教師難教,學(xué)生也難學(xué)。因此,在傳統(tǒng)教學(xué)模式基礎(chǔ)上,提出多維立體教學(xué)系統(tǒng),從教學(xué)手段和教學(xué)方法等方面對C語言程序設(shè)計課程進行教學(xué)改革和教學(xué)實踐,提高學(xué)生學(xué)習(xí)興趣并培養(yǎng)學(xué)生分析與解決問題的能力。
關(guān)鍵詞:C語言;教學(xué)模式;教學(xué)改革
0 引言
C語言程序設(shè)計不僅是計算機專業(yè)的必修課,而且是很多非計算機專業(yè)的公共基礎(chǔ)課。它通常是高校學(xué)生所接觸到的第一門程序設(shè)計語言,其重要性可見一斑。由于是“第一門”,學(xué)生的學(xué)習(xí)熱情高漲,但當(dāng)碰到數(shù)據(jù)類型繁多、語法結(jié)構(gòu)復(fù)雜的計算機語言時,學(xué)生的學(xué)習(xí)興趣很快就消退了。如何結(jié)合現(xiàn)有的教學(xué)模式,改進C語言的教學(xué)效果,提高學(xué)生的學(xué)習(xí)興趣,讓學(xué)生能較快地掌握程序設(shè)計基本方法,一直以來都是值得探索的問題。
1 C語言的多維立體教學(xué)系統(tǒng)
樹立一個正確的教學(xué)目的和學(xué)習(xí)目的分別是教師教好和學(xué)生學(xué)好一門課的根本所在。教師和學(xué)生都應(yīng)向這一目標(biāo)努力。傳統(tǒng)的教學(xué)模式存在交互性弱、理論與實踐缺乏聯(lián)系等缺點。筆者結(jié)合多年C語言程序設(shè)計課程的教學(xué)經(jīng)驗,在傳統(tǒng)教學(xué)模式的基礎(chǔ)之上,提出多維立體教學(xué)系統(tǒng),如圖1所示。該系統(tǒng)由多元學(xué)習(xí)系統(tǒng)、實例分析系統(tǒng)、成功激勵系統(tǒng)3個子系統(tǒng)構(gòu)成多維度、立體化的學(xué)習(xí)模式。多維立體教學(xué)系統(tǒng)為C語言學(xué)習(xí)者定制完全個性化的學(xué)習(xí)模式,能全面提升學(xué)習(xí)者的C語言運用水平,真正實現(xiàn)學(xué)知所用、學(xué)有所用、學(xué)會所用。
1.1多元學(xué)習(xí)系統(tǒng)
高校制訂教學(xué)計劃時,通常將該課程安排在大學(xué)一年級開設(shè),而這一時期,學(xué)生剛剛由高中進入大學(xué),對專業(yè)方向以及后續(xù)要學(xué)習(xí)哪些專業(yè)課程還不了解。學(xué)生們會疑惑:這門課對后續(xù)課程學(xué)習(xí)到底有什么用?這時,他們根本不可能認(rèn)識到將這門課作為專業(yè)基礎(chǔ)課的真正用意,而從輔導(dǎo)員及學(xué)長那里得到的信息是計算機二級證書對于就業(yè)大有裨益。于是,學(xué)生在學(xué)習(xí)這門課伊始,心里便有了目標(biāo):通過計算機二級考試。對此,教師首先要做的是明確教學(xué)目的并調(diào)整教學(xué)目標(biāo),及時引導(dǎo)學(xué)生,讓學(xué)生明確學(xué)習(xí)C語言的終極目標(biāo)是“學(xué)以致用”。
多元學(xué)習(xí)系統(tǒng)是以多媒體教學(xué)為基礎(chǔ),并采用正常學(xué)習(xí)課、主題沙龍課、學(xué)習(xí)輔導(dǎo)課相結(jié)合的教學(xué)環(huán)節(jié),幫助學(xué)生學(xué)習(xí)C語言。正常學(xué)習(xí)課就是教師采用傳統(tǒng)的教學(xué)方法,以正常的多媒體及板書形式授課,使學(xué)生在短時間內(nèi)獲取大量信息的教學(xué)方法。這種方法雖然存在大家所都熟知的諸多缺點,但要使幾十甚至上百名學(xué)生能較快地掌握課程內(nèi)容,傳統(tǒng)的教學(xué)方法不可或缺。教師應(yīng)在講授這門課程伊始就清楚地告訴學(xué)生:學(xué)習(xí)這門課的主要目的,是通過學(xué)習(xí)C語言,了解基本的算法,掌握正確的編程思想和編程方法,提高計算機的應(yīng)用水平,為后續(xù)課程打下良好、堅實的基礎(chǔ)。教師在講授這門課的同時,也要注意適時引導(dǎo),不要過分強調(diào)計算機二級考試和期末考試的重要性,應(yīng)本著實用的目的,讓學(xué)生活學(xué)活用。至于計算機二級考試,其實與我們上面指明的學(xué)習(xí)目的并不矛盾,如果學(xué)生的學(xué)習(xí)目標(biāo)真正明確了,順利通過二級考試也是自然而然的事情。
主題沙龍課和學(xué)習(xí)輔導(dǎo)課是正常學(xué)習(xí)課的重要補充。教師在正常學(xué)習(xí)課環(huán)節(jié)的基礎(chǔ)上開展主題沙龍課,將正常學(xué)習(xí)課的重要知識點進行提煉,提出一定主題下的拓展命題,可以訓(xùn)練學(xué)生對知識點的認(rèn)知能力,使其進一步加深在知識點應(yīng)用層面上的體會,并促進學(xué)生對知識進行消化和吸收。學(xué)習(xí)輔導(dǎo)課是針對學(xué)生上課(包括正常學(xué)習(xí)課及主題沙龍課)、作業(yè)及答疑過程中存在的不足,為學(xué)生擴展和補充C語言語法特點和應(yīng)用案例等方面的知識,幫助學(xué)生快速積累知識。由正常學(xué)習(xí)課、主題沙龍課、學(xué)習(xí)輔導(dǎo)課構(gòu)成的多元學(xué)習(xí)系統(tǒng)如圖2所示,三者相互促進且互為補充,是C語言多元學(xué)習(xí)中必不可少的環(huán)節(jié)。
1.2實例分析系統(tǒng)
美國著名的教育家喬伊斯在《教學(xué)模式》一書中,將教學(xué)模式分成4類。信息處理模式注重幫助學(xué)習(xí)者獲取信息,并發(fā)展學(xué)習(xí)者獲取信息、加工信息、觀察問題和解決問題的能力;歸納模式側(cè)重信息的獲得和加工;概念獲得模式主要是幫助學(xué)習(xí)者有效地學(xué)習(xí)概念;探究模式主要在于培養(yǎng)學(xué)習(xí)者探究的技能。
結(jié)合喬伊斯的教學(xué)模式理論,筆者提出實例分析系統(tǒng)。該系統(tǒng)以幾個完整的案例為總線,從工程實踐的角度出發(fā),首先提出問題:我要編寫一個什么樣的程序,該程序要實現(xiàn)什么樣的功能;其次再進行功能模塊劃分,引出模塊化的思路;最后以案例為向?qū)崿F(xiàn)每個功能模塊,而每個模塊所涉及的知識點也被順理成章地引出來。傳統(tǒng)的C語言程序設(shè)計教學(xué)以填鴨式教學(xué)為主,強調(diào)教師“如何教”,忽視學(xué)生“如何學(xué)”這個問題。教學(xué)基本上都是在講解基本語法,配套教材中的案例也只是為了說明語法而已,缺乏趣味性。然而興趣和愛好卻是最好的老師,瓦特發(fā)明蒸汽機、牛頓發(fā)現(xiàn)萬有引力定律都是興趣的指引。
實例分析系統(tǒng)首先用生動的實例告訴學(xué)生這門課的學(xué)習(xí)目的是什么,避免了是什么、怎么用的介紹方式,而采用提出問題、分析問題、解決問題的方式;其次,掌握枯燥難懂的語法是實現(xiàn)案例功能的重要途徑,采用實例分析系統(tǒng)可以讓學(xué)生以輕松和主動的態(tài)度學(xué)習(xí)與掌握知識點;最后,將工程應(yīng)用能力和創(chuàng)新能力的培養(yǎng)滲透于日常的實踐教學(xué)中,這也符合“卓越工程師教育培養(yǎng)計劃”(簡稱卓越計劃)的提出。實例分析系統(tǒng)在具體實施過程中還要注意把握以下幾個方面。
1.2.1多媒體教學(xué)結(jié)合案例教學(xué)
目前,C語言教學(xué)大多采用多媒體形式,因此教師應(yīng)充分發(fā)揮多媒體的視聽優(yōu)勢,注重選用集實用性、趣味性、一致性于一體的案例,通過多媒體演示程序執(zhí)行流程、數(shù)據(jù)類型存儲過程、函數(shù)參數(shù)傳遞過程等。除了貫穿全局的大案例選擇,小案例的選擇也很重要。所選案例既要與教學(xué)目的相吻合,又要是學(xué)生易于接受和感興趣的案例。
教學(xué)選擇“智力大通關(guān)游戲”作為貫穿始終的大案例。該游戲由用戶選擇1、2、3、4、5、6(用戶可通過擲骰子選擇點數(shù)),然后進入相應(yīng)的游戲環(huán)節(jié),有算術(shù)游戲、智力問答、五子棋等游戲。教師通過程序展示環(huán)節(jié),讓學(xué)生對C語言編寫的應(yīng)用程序有一個初步了解,然后隨著學(xué)習(xí)內(nèi)容的深入,學(xué)生從最簡單的模塊開始,不斷完善程序功能。
例如,學(xué)生在學(xué)習(xí)輸入輸出函數(shù)時,利用輸出函數(shù)輸出一個算術(shù)題或智力題,加深對打印輸出函數(shù)printf()的理解;利用輸入函數(shù)輸入數(shù)值,加深對輸入函數(shù)scarlf()的理解;學(xué)習(xí)選擇結(jié)構(gòu)時,利用if-else結(jié)構(gòu)判斷輸入的答案是否正確,若答案正確,輸出“恭喜你,答對了”,答案錯誤則輸出“下次再努力吧!”;利用switch()結(jié)構(gòu)可以選擇游戲類型,練習(xí)多分支結(jié)構(gòu)的使用;學(xué)習(xí)循環(huán)結(jié)構(gòu)時,可用“當(dāng)型循環(huán)”或“直到型循環(huán)”循環(huán)地出算術(shù)題或智力問答題,直到用戶選擇退出游戲;在學(xué)習(xí)函數(shù)知識時,可以用函數(shù)調(diào)用的方式練習(xí)出題過程。
至此,“智力大通關(guān)游戲”的基本程序框架已搭好。學(xué)生對于數(shù)組、結(jié)構(gòu)體、共用體及指針內(nèi)容的學(xué)習(xí),可以以教師選擇的信息管理系統(tǒng)為案例進行學(xué)習(xí)。學(xué)生可利用數(shù)組的知識,練習(xí)編寫計算每門課平均成績及每名學(xué)生平均成績的程序;用結(jié)構(gòu)體和共用體及指針的概念來存儲和管理每名學(xué)生的基本信息,在此基礎(chǔ)上,逐漸增加該程序的難度,并利用前面所學(xué)的函數(shù)知識,實現(xiàn)成績查詢、學(xué)生基本信息查詢等功能;學(xué)習(xí)文件時,可編寫如何將學(xué)生信息保存到文本文件或如何從文本文件中讀人信息的程序,使學(xué)生掌握有關(guān)文件處理函數(shù)的使用。相關(guān)內(nèi)容學(xué)習(xí)結(jié)束后,一個簡單的信息管理系統(tǒng)程序設(shè)計也就完成了。
1.2.2課堂討論與實踐教學(xué)相結(jié)合
人的能力是在實踐中形成的,實踐是實現(xiàn)由知識到能力轉(zhuǎn)化的重要過程。要實現(xiàn)具有一定理論基礎(chǔ)、創(chuàng)新能力和扎實的動手能力的應(yīng)用型人才培養(yǎng)目標(biāo),加強實踐教學(xué)尤為重要。教師在講課時也可以把一些富有啟發(fā)性的問題編成思考題,要求學(xué)生查找資料、獨立思考,然后再組織學(xué)生就這些思考題進行討論,在討論中鞏固所學(xué)內(nèi)容。
學(xué)生有了學(xué)習(xí)興趣,自然就能積極自主地學(xué)習(xí),教師也轉(zhuǎn)變?yōu)閷W(xué)習(xí)的輔助工具,從而逐步完成從“做中學(xué)”到“學(xué)中思”的過渡。在實現(xiàn)“智力大通關(guān)游戲”程序后,教師可以給同學(xué)留下一些討論題,如增加菜單的功能、增加用戶密碼的功能等,要求同學(xué)分組討論(即主題沙龍課環(huán)節(jié)),利用所學(xué)知識完善程序。教師在學(xué)生學(xué)會設(shè)計學(xué)生信息管理系統(tǒng)程序后,要求學(xué)生實現(xiàn)圖書信息管理系統(tǒng)或飛機訂票系統(tǒng)的程序設(shè)計,以激發(fā)學(xué)生的創(chuàng)造性。課堂討論不僅能拓寬學(xué)生的思路,使學(xué)生高質(zhì)量地完成學(xué)習(xí)任務(wù),而且還可以提高學(xué)生的綜合素質(zhì)。
1.2.3多媒體教學(xué)與傳統(tǒng)板書教學(xué)相結(jié)合
教育心理學(xué)研究表明:人獲取的外界信息中,83%來自視覺,11%來自聽覺,3.5%來自嗅黨,1.5%來自觸覺,1%來自味覺。顯然,增加視覺和聽覺信息量是多獲取信息的可取方法。多媒體恰好在視聽方面具有顯著優(yōu)勢,因此,從教育心理學(xué)角度看,運用多媒體輔助教學(xué)對提高教學(xué)效果必然大有好處。但多媒體教學(xué)不只是教師用電子教案取代紙板教案、用電子板書代替粉筆板書,而是在充分理解媒體語言、掌握其傳播特性的基礎(chǔ)上進行設(shè)計。
在眾多的教學(xué)媒體中,文本擅長表述高度概括、極為抽象或結(jié)論性的內(nèi)容,我們通常將文本用于概念的表達,如語句的基本語法介紹等;圖形、圖像形象直觀,能夠直觀并生動地傳播信息,因此結(jié)合文本進行合理的頁面布局可以起到畫龍點睛的作用;動畫是以視聽的方式進行表達,恰當(dāng)?shù)膭赢嫵煞挚善鸬綇娬{(diào)主題、增加情趣的作用,如采用動畫方式對指針的應(yīng)用進行講解,使學(xué)生了解每一條語句在執(zhí)行過程中的作用,增強學(xué)生的直觀感受。
教師在利用多媒體技術(shù)輔助教學(xué)時需要注意以下方面。
1)在教學(xué)過程中,不建議一味追求視覺效果,而忽視教學(xué)本身,對多媒體類型的選擇要慎重。
2)多媒體技術(shù)是教學(xué)的輔助手段,因此不能本末倒置?;脽羝啾葌鹘y(tǒng)板書方式包含的信息量大,教師容易忽視學(xué)生對知識的消化能力。因此,多媒體教學(xué)要有重點地與板書進行結(jié)合,有的放矢地利用傳統(tǒng)教學(xué)手段強調(diào)關(guān)鍵內(nèi)容。
3)制作課件時,避免將課本內(nèi)容原樣拷貝到課件上,這會使學(xué)生難以領(lǐng)會重點。多媒體教學(xué)只有與傳統(tǒng)板書教學(xué)有機結(jié)合,才能使課堂教學(xué)環(huán)節(jié)集知識、專業(yè)、趣味于一體。
1.3成功激勵系統(tǒng)
西方教育“以人為本”,從課程學(xué)習(xí)與實踐上升到人的全方位成功。成功激勵系統(tǒng)幫助學(xué)生實現(xiàn)自我認(rèn)識、自我定位、自我成功等。編程是一種技能,學(xué)習(xí)C語言的關(guān)鍵是將C語言運用到實際應(yīng)用當(dāng)中。首先了解你自己,在此基礎(chǔ)上,設(shè)定C語言學(xué)習(xí)目標(biāo),以案例為驅(qū)動力,嘗試新的挑戰(zhàn),不斷地從錯誤中總結(jié)并提高自己,追求卓越,這是一個不斷循環(huán)的過程。成功激勵系統(tǒng)如圖3所示,它可以是C語言學(xué)習(xí)的成功激勵系統(tǒng),同時也與“卓越計劃”的初衷一致。
2.1重視買踐環(huán)節(jié)
通過課堂的理論學(xué)習(xí),學(xué)生掌握了C語言的語法知識,但是編寫的程序是否正確并符合要求、能否運行,就需要通過上機調(diào)試環(huán)節(jié)來驗證。上機調(diào)試可以使學(xué)習(xí)中的疑點或問題得到明確解答,使學(xué)生更好地理解和鞏固課堂內(nèi)容,并且能培養(yǎng)學(xué)生編程和調(diào)試程序的能力,因此必須重視上機實踐環(huán)節(jié)。作為教師,結(jié)合學(xué)生在課堂上所學(xué)的知識,對上機實驗內(nèi)容進行精心設(shè)計,以便學(xué)生更好地消化和理解知識;還要盡量結(jié)合學(xué)生的專業(yè),注重內(nèi)容的實用性。
C語言是一門實踐性很強的課程,學(xué)生僅通過幾學(xué)時的上機環(huán)節(jié)還是不了解到底怎樣編寫一個能夠應(yīng)用的完整程序?;诖?,教師增設(shè)了課程設(shè)計環(huán)節(jié),首先合理選題,題目既要起到訓(xùn)練的目的,又不能難度太大。從以往的課程設(shè)計情況來看,信息管理類的題目比較適合做C語言程序設(shè)計題目。另外,考核方式也應(yīng)靈活,教師不應(yīng)以成敗論英雄,應(yīng)摒棄以往以程序是否調(diào)通為依據(jù),并將其作為最終成績的做法。實踐證明,“成敗論”有損學(xué)生對C語言學(xué)習(xí)的積極性??己藨?yīng)以學(xué)生的考勤和鉆研精神、所做程序的完整性和運行情況、最終的簡要答辯為依據(jù),著重鼓勵學(xué)生通過課程設(shè)計掌握編程知識和技能。
2.2教學(xué)、實踐與創(chuàng)新的關(guān)系
教學(xué)環(huán)節(jié)是知識積累的基礎(chǔ),而實踐環(huán)節(jié)是教學(xué)環(huán)節(jié)的必要補充,兩者相輔相成、缺一不可。教學(xué)、實踐與創(chuàng)新的關(guān)系如圖4所示。實踐環(huán)節(jié)是學(xué)習(xí)能力與創(chuàng)新精神的集中體現(xiàn),是訓(xùn)練學(xué)習(xí)能力和創(chuàng)新能力的最佳途徑。教學(xué)、實踐、創(chuàng)新,進而促進教學(xué)及實踐環(huán)節(jié),這樣不但可以促進學(xué)生鞏固課堂知識,而且可以激發(fā)學(xué)生在課外學(xué)習(xí)自己感興趣的知識,為以后學(xué)習(xí)專業(yè)知識打下堅實基礎(chǔ)。
3 結(jié)語
C語言教學(xué)需要改革,需要以學(xué)生為中心的現(xiàn)代理念。結(jié)合工科院校學(xué)生的特點,筆者主要從C語言課程的教學(xué)模式、教學(xué)環(huán)節(jié)、實踐創(chuàng)新等方面進行切合實際的分析,相信這套教改方案會對提高C語言課程教學(xué)效果及實施卓越計劃產(chǎn)生有利的影響。