王維利
摘要:為解決當(dāng)前高職院校中《C語(yǔ)言》課程教學(xué)效果較差、學(xué)生學(xué)習(xí)后仍然不具備相應(yīng)的程序設(shè)計(jì)能力的問(wèn)題,對(duì)高職C語(yǔ)言教學(xué)的現(xiàn)狀及內(nèi)在原因進(jìn)行了深入的分析,并以基于工作過(guò)程導(dǎo)向的教學(xué)思想為指導(dǎo),從教學(xué)內(nèi)容組織、教學(xué)方式選擇、教學(xué)過(guò)程組織等方面對(duì)C語(yǔ)言課程的教學(xué)改革進(jìn)行了一系列探索和實(shí)踐,以期提高C語(yǔ)言課程的教學(xué)質(zhì)量。
關(guān)鍵詞:C語(yǔ)言;工作過(guò)程導(dǎo)向;教學(xué)改革;程序設(shè)計(jì);程序測(cè)試與調(diào)試
中圖分類號(hào):TP311.1 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2015)06-0141-02
Discussion on Teaching Reform of "C Language" in Higher Vocational Colleges
WANG Wei-li
(Shandong College of Information Technology, Weifang 261061, China)
Abstract: In order to solve the problem that the teaching effect of "C language" is quite poor in higher vocational colleges currently and the students ability of programming is still not available after the course, an in-depth analysis on the present situation of the C language teaching and the internal cause is provided. And based on the working process oriented theory, a series of exploration and practice of teaching reform in C language teaching are carried on, in the teaching content organization, teaching method choice, and teaching process organization, to improve the teaching quality of "C Language".
Key words: C Language; working process oriented; teaching reform; program design; program testing and debugging
《C語(yǔ)言》是高職院校計(jì)算機(jī)、軟件類專業(yè)的一門核心基礎(chǔ)課,在這些專業(yè)的課程體系中占有重要地位,不僅是學(xué)生學(xué)習(xí)《數(shù)據(jù)結(jié)構(gòu)》、《C#程序設(shè)計(jì)》、《Java程序設(shè)計(jì)》等后續(xù)課程的基礎(chǔ),而且對(duì)培養(yǎng)和提高學(xué)生將來(lái)工作崗位上所必需的編程、測(cè)試、調(diào)試能力有重要作用。但在實(shí)際教學(xué)過(guò)程中,由于諸多原因的存在,教學(xué)效果往往很不理想,大部分學(xué)生學(xué)完后仍然不能獨(dú)立編程、調(diào)試,甚至連最簡(jiǎn)單的程序都不能正確寫出來(lái)。
針對(duì)這種現(xiàn)象,筆者進(jìn)行了深入的思考,并在近幾年的教學(xué)中,進(jìn)行了一些有益的改革嘗試。下面僅將筆者的一些認(rèn)識(shí)和做法分享給各位讀者,如有不當(dāng)之處,敬請(qǐng)批評(píng)指正。
1 C語(yǔ)言教學(xué)現(xiàn)狀分析
1.1學(xué)生學(xué)習(xí)基礎(chǔ)差,動(dòng)力和韌勁不足
首先,高職院校的生源種類多,學(xué)生情況參差不齊,但大部分學(xué)生的文化基礎(chǔ)普遍較差。而C語(yǔ)言課程的學(xué)習(xí),需要學(xué)生有一定的數(shù)學(xué)和英語(yǔ)知識(shí)作為基礎(chǔ),否則就難以理解和接受解決問(wèn)題的基本思想;而程序的標(biāo)識(shí)符和調(diào)試環(huán)境的認(rèn)識(shí)、掌握和使用也是個(gè)大問(wèn)題,并且程序設(shè)計(jì)對(duì)學(xué)生的邏輯思維能力也有較高的要求,高職學(xué)生在這方面往往有較大欠缺。其次,不少學(xué)生進(jìn)入高職后學(xué)習(xí)目的不明確、態(tài)度不端正,遇到問(wèn)題缺乏堅(jiān)持不懈、積極思考的精神,反而容易“知難而退”。這就造成有不少學(xué)生開(kāi)始時(shí)想好好學(xué),但隨著越來(lái)越多問(wèn)題和困難的出現(xiàn),能堅(jiān)持下去的學(xué)生越來(lái)越少,而能以良好的學(xué)習(xí)狀態(tài)堅(jiān)持到最后的幾乎成了“鳳毛麟角”。
1.2學(xué)生對(duì)C語(yǔ)言課程學(xué)習(xí)的興趣不足
目前,絕大部分學(xué)生接觸過(guò)的計(jì)算機(jī)系統(tǒng)軟件或應(yīng)用軟件都具有美觀、易用的用戶界面,而用C語(yǔ)言設(shè)計(jì)出的程序往往界面單調(diào)、操作繁瑣,二者對(duì)比,學(xué)生就會(huì)產(chǎn)生一種心理落差,不看好C語(yǔ)言。另一方面,C語(yǔ)言語(yǔ)法規(guī)則的掌握和應(yīng)用也是學(xué)生學(xué)習(xí)的一大障礙,而程序出錯(cuò)時(shí),甚至要從整個(gè)程序的范圍內(nèi)查找錯(cuò)誤。這種情況下,如果教師仍然采用傳統(tǒng)的方式組織教學(xué)內(nèi)容和授課,一味地講解語(yǔ)法,不給出一些生動(dòng)有趣的實(shí)例,學(xué)生必然會(huì)對(duì)C語(yǔ)言逐漸失去學(xué)習(xí)興趣和信心。
1.3缺乏適合高職學(xué)生特點(diǎn)的教學(xué)內(nèi)容組織
首先,傳統(tǒng)的C語(yǔ)言教材往往是以語(yǔ)法介紹為主、輔以例題的方式組織教學(xué)內(nèi)容,這種組織方式不適合高職學(xué)生接受知識(shí)的特點(diǎn),容易使學(xué)生產(chǎn)生畏難情緒,失去學(xué)習(xí)興趣。其次,傳統(tǒng)教材內(nèi)容對(duì)涉及的部分語(yǔ)法知識(shí)討論得太過(guò)深入和細(xì)致,對(duì)目前的高職學(xué)生來(lái)說(shuō),既沒(méi)有實(shí)用價(jià)值,又帶來(lái)了不必要的困惑。例如,格式化輸入、輸出函數(shù)printf、scanf對(duì)學(xué)生是新事物,學(xué)生要學(xué)會(huì)其基本格式和簡(jiǎn)單應(yīng)用本來(lái)就有些難度,如果再同時(shí)加入過(guò)多的、深入的語(yǔ)法內(nèi)容,那么就對(duì)絕大多數(shù)學(xué)生形成了一個(gè)“不可逾越”的障礙。
1.4教學(xué)方式及過(guò)程組織不利于程序設(shè)計(jì)課程的教學(xué)目標(biāo)實(shí)現(xiàn)
傳統(tǒng)的C語(yǔ)言教學(xué)往往是先理論授課、再上機(jī)實(shí)驗(yàn),二者通常是分離的,理論授課時(shí)學(xué)生對(duì)相關(guān)內(nèi)容缺乏形象、直觀的認(rèn)識(shí)和理解,不便于他們接受知識(shí)。而且實(shí)驗(yàn)內(nèi)容的編排經(jīng)常是以程序驗(yàn)證為主,沒(méi)有體現(xiàn)出程序分析與設(shè)計(jì)的教學(xué)目標(biāo),不利于學(xué)生程序設(shè)計(jì)能力的培養(yǎng)和形成。
2 主要改革措施
針對(duì)教學(xué)實(shí)踐中存在的上述現(xiàn)狀和問(wèn)題,筆者在近幾年的教學(xué)過(guò)程中,進(jìn)行了如下幾方面的嘗試,取得了較好的教學(xué)效果。
2.1在教學(xué)內(nèi)容組織上
首先,打破原有的系統(tǒng)性的知識(shí)體系,以工作過(guò)程導(dǎo)向?yàn)橹笇?dǎo),創(chuàng)設(shè)一系列工作情境,并按照由易到難、由基本到綜合的原則為每個(gè)工作情境分解成幾個(gè)工作任務(wù),并以各個(gè)工作任務(wù)為主線組織相關(guān)教學(xué)內(nèi)容。這樣,借助一個(gè)個(gè)工作任務(wù),將所用知識(shí)點(diǎn)有機(jī)地組織、穿插到一起,融合于一系列工作任務(wù)程序中,學(xué)生既容易理解語(yǔ)法規(guī)則,又能直觀、形象地掌握該如何應(yīng)用。
其次,一切以使學(xué)生學(xué)會(huì)程序設(shè)計(jì)為目的,將所有知識(shí)點(diǎn)分類處理,編程中常用的重點(diǎn)介紹,用得比較少的內(nèi)容以注解的形式給出,并直接舍棄編程中根本用不到的內(nèi)容,以免過(guò)多、過(guò)濫的信息干擾學(xué)生的學(xué)習(xí),導(dǎo)致他們?cè)趯W(xué)習(xí)過(guò)程中舍本逐末,而沒(méi)有真正培養(yǎng)出必需的程序設(shè)計(jì)能力。
第三,創(chuàng)設(shè)工作情景時(shí),要充分調(diào)動(dòng)學(xué)生對(duì)本課程的學(xué)習(xí)興趣,如可創(chuàng)設(shè)計(jì)算器、成績(jī)管理系統(tǒng)、文本編輯器、貪吃蛇、俄羅斯方塊、霓虹燈等情境,計(jì)算器情境又可分解為固定運(yùn)算、多種運(yùn)算、混合運(yùn)算的計(jì)算器,并在各個(gè)情境任務(wù)中逐步納入相關(guān)語(yǔ)法知識(shí)點(diǎn)。
2.2在教學(xué)方式及過(guò)程組織上
在教學(xué)方式上,力爭(zhēng)實(shí)現(xiàn)教、學(xué)、做一體化,最好的教學(xué)地點(diǎn)是多媒體微機(jī)室,演示、講解、討論、驗(yàn)證、應(yīng)用拓展融于一體,便于學(xué)生在模仿中理解和掌握知識(shí),在模仿中提高和拓展程序設(shè)計(jì)能力。
在教學(xué)組織上,發(fā)揮學(xué)生小組學(xué)習(xí)的優(yōu)勢(shì),并建立適當(dāng)?shù)母?jìng)爭(zhēng)激勵(lì)機(jī)制。將全班學(xué)生合理分成若干學(xué)習(xí)小組,每組4-6人,組長(zhǎng)負(fù)責(zé)組內(nèi)討論、任務(wù)分配及簡(jiǎn)單問(wèn)題的答疑等工作,因此要求組長(zhǎng)在學(xué)習(xí)中要走在其他同學(xué)的前面,做好預(yù)習(xí)和相關(guān)準(zhǔn)備工作。教學(xué)過(guò)程和課程考核評(píng)價(jià)主要以小組為單位進(jìn)行,如課堂提問(wèn)時(shí)從每個(gè)小組找一名同學(xué)回答,討論時(shí)也是各小組派代表發(fā)言,小組與小組的表現(xiàn)情況進(jìn)行評(píng)比,從而激發(fā)學(xué)生為小組榮譽(yù)而努力的學(xué)習(xí)動(dòng)力。
為幫助學(xué)生循序漸進(jìn)地培養(yǎng)和提高程序設(shè)計(jì)能力,實(shí)驗(yàn)內(nèi)容的準(zhǔn)備分三個(gè)層次:一是給出正確的源程序,要求學(xué)生分析程序結(jié)果并上機(jī)驗(yàn)證;二是只給出程序的一部分,關(guān)鍵部分由學(xué)生根據(jù)功能要求進(jìn)行補(bǔ)充,并上機(jī)調(diào)試正確;三是只給出程序功能,要求學(xué)生自己設(shè)計(jì)算法,并寫出完整程序、上機(jī)調(diào)試正確。通過(guò)這樣的實(shí)驗(yàn)內(nèi)容編排,讓學(xué)生在模仿中獲取知識(shí),在模仿中創(chuàng)新。
2.3將程序設(shè)計(jì)全面能力的培養(yǎng)貫穿于課程始終
一是注重培養(yǎng)和提高學(xué)生在解決問(wèn)題過(guò)程中的算法設(shè)計(jì)能力。C語(yǔ)言的學(xué)習(xí)不只是語(yǔ)法規(guī)則的學(xué)習(xí)和應(yīng)用,算法設(shè)計(jì)才是程序設(shè)計(jì)的根本。在以往教學(xué)中發(fā)現(xiàn)大部分學(xué)生不只是寫錯(cuò)程序,而是根本不會(huì)寫程序,連解決問(wèn)題的思路都沒(méi)有,所以要想辦法使學(xué)生從根本上解決這個(gè)難題。教學(xué)實(shí)踐中,除了舉例講解算法的描述、設(shè)計(jì)方法外,每次課結(jié)束時(shí)都會(huì)要求學(xué)生對(duì)下次課的例題進(jìn)行預(yù)習(xí)、完成相關(guān)的算法思考和設(shè)計(jì),再次上課時(shí)從中選出好的算法進(jìn)行程序設(shè)計(jì)。
二是強(qiáng)調(diào)程序調(diào)試方法和技巧的掌握和應(yīng)用。其他課程的知識(shí),學(xué)生學(xué)習(xí)后理解、掌握得如何,往往需要教師對(duì)其完成的作業(yè)或任務(wù)進(jìn)行檢查后才能得知,而程序設(shè)計(jì)課程則可以通過(guò)上機(jī)執(zhí)行程序進(jìn)行驗(yàn)證;如果程序中出現(xiàn)錯(cuò)誤也可以通過(guò)上機(jī)調(diào)試的方法進(jìn)行檢查和改錯(cuò)。因此,任課教師要在教學(xué)過(guò)程中適時(shí)穿插有關(guān)程序測(cè)試、調(diào)試方法等內(nèi)容的講授、訓(xùn)練。
三是要求學(xué)生多動(dòng)手、多動(dòng)腦。學(xué)生在作業(yè)中經(jīng)常出現(xiàn)一些違反語(yǔ)法規(guī)則的現(xiàn)象,產(chǎn)生這種問(wèn)題的原因有兩個(gè)方面:一是學(xué)生對(duì)語(yǔ)法規(guī)則的理解、掌握不夠;二是學(xué)生缺少對(duì)正確程序或者說(shuō)產(chǎn)生錯(cuò)誤的感性認(rèn)識(shí)。要增強(qiáng)學(xué)生對(duì)程序錯(cuò)誤的感性認(rèn)識(shí),最好的辦法是在多媒體機(jī)房中實(shí)施教學(xué),講練結(jié)合,教師再加以巡回指導(dǎo)、講解和點(diǎn)評(píng)。
C語(yǔ)言程序設(shè)計(jì)是實(shí)踐性很強(qiáng)的課程,學(xué)生的實(shí)踐操作能力非常重要,學(xué)生既要?jiǎng)邮謱懗绦?,還要親自上機(jī)運(yùn)行、測(cè)試、調(diào)試程序,這樣才能形成全面的程序設(shè)計(jì)能力。
3 結(jié)束語(yǔ)
高職C語(yǔ)言教學(xué)改革是一項(xiàng)長(zhǎng)期的工作,需要任課教師根據(jù)學(xué)生的實(shí)際情況,不斷在教學(xué)實(shí)踐中探索、改進(jìn)、總結(jié)、提升。只要充分發(fā)揮“學(xué)生為主體,教師為主導(dǎo)”的積極作用,按照適合學(xué)生、課程特點(diǎn)的原則組織教學(xué)內(nèi)容、教學(xué)過(guò)程,重視學(xué)生動(dòng)手實(shí)踐環(huán)節(jié),一定可以取得良好的教學(xué)效果。
參考文獻(xiàn):
[1] 丁輝. 高職C語(yǔ)言程序設(shè)計(jì)教學(xué)改革研究[J]. 計(jì)算機(jī)教育, 2014(3).
[2] 池云. 高職C語(yǔ)言程序設(shè)計(jì)教學(xué)改革的研究[J]. 遼寧行政學(xué)院學(xué)報(bào), 2011(4).
[3] 屈喜琴,石卉,陳忠貴. 高職高?!禖語(yǔ)言程序設(shè)計(jì)》教學(xué)改革探索[J]. 軟件導(dǎo)刊, 2012(6).