摘 要:C語言功能豐富,表達(dá)能力強(qiáng),使用靈活方便,應(yīng)用面廣,目標(biāo)程序效率高,可移植性好,既具有高級(jí)語言的優(yōu)點(diǎn),又具有低級(jí)語言的許多特點(diǎn)。本文對(duì)C語言從教學(xué)內(nèi)容、教學(xué)手段、教學(xué)方法等方面的改革進(jìn)行了闡述。
關(guān)鍵詞:C語言教學(xué);教學(xué)改革
1引言
C語言程序設(shè)計(jì)課程是高職院校計(jì)算機(jī)類專業(yè)的專業(yè)基礎(chǔ)課,是一門理論與實(shí)踐并重的課程,C語言是早期最經(jīng)典、最強(qiáng)大的面向過程的程序設(shè)計(jì)語言之一,雖然現(xiàn)在的程序設(shè)計(jì)已經(jīng)全面轉(zhuǎn)向面向?qū)ο?,但是C語言本身的設(shè)計(jì)理念以及對(duì)現(xiàn)有C++/C#等語言的深刻影響,使其至今仍是程序設(shè)計(jì)入門的首選語言。
2 C 語言教學(xué)中面臨的問題
目前很多學(xué)校C語言課程的教學(xué)仍停留在傳統(tǒng)的模式上,比較注重語法知識(shí)講解,輔以一些編程技巧的介紹,而在教授編程方法和訓(xùn)練學(xué)生的編程能力方面卻不足。并且,C語言運(yùn)行環(huán)境大多還是在DOS系統(tǒng)下,通過鍵盤操作,這比起VF、VB來說界面比較單一,很多同學(xué)對(duì)C語言的一些語法規(guī)則感覺枯燥。
3理論教學(xué)手段的改革
在教學(xué)過程中,運(yùn)用多媒體技術(shù)輔助教學(xué),有利于優(yōu)化教學(xué)過程。但多媒體輔助教學(xué)也有不足之處。主要體現(xiàn)在課件都是課前準(zhǔn)備好的,但是不同專業(yè)的學(xué)生水平不同,教學(xué)過程中掌握知識(shí)的效果不同,如果光靠多媒體教學(xué),會(huì)影響師生之間的交流,不能及時(shí)了解學(xué)生的學(xué)習(xí)狀態(tài)。因此在C語言程序設(shè)計(jì)課程教學(xué)過程中,考慮到課程的特點(diǎn),對(duì)于具體程序的編寫過程,應(yīng)該發(fā)揮傳統(tǒng)教學(xué)的優(yōu)勢(shì),上課時(shí)采用“多媒體+演示程序+黑板”相結(jié)合的方式較為合適。
4教學(xué)方法的改革
傳統(tǒng)的注入式教學(xué)方法培養(yǎng)出來的學(xué)生缺少創(chuàng)造性,社會(huì)適應(yīng)能力差。在計(jì)算機(jī)教學(xué)中要采用多種靈活的教學(xué)方法和手段,提高教學(xué)效率,突出學(xué)生能力和創(chuàng)新意識(shí)的培養(yǎng)。
4.1啟發(fā)式教學(xué)法
啟發(fā)式教學(xué)法能夠充分發(fā)揮學(xué)生的思維能力,突出學(xué)生的主體作用,能有效地培養(yǎng)學(xué)生的分析問題與解決問題的能力。以“求一元二次方程式”為例,筆者讓學(xué)生先思考算術(shù)中的解法,然后啟發(fā)學(xué)生考慮方程式的各種情況,并據(jù)此畫出流程圖。接下來講解如何用if程序結(jié)構(gòu)實(shí)現(xiàn)算法,直至整個(gè)程序編寫完整。整個(gè)講解過程與學(xué)生有問有答,讓學(xué)生充分思考,取得了很好的教學(xué)效果。
4.2問題驅(qū)動(dòng)教學(xué)法
結(jié)構(gòu)化程序設(shè)計(jì)的基本思想就是自頂向下和逐步細(xì)分,在C語言程序設(shè)計(jì)教學(xué)過程中引用“問題驅(qū)動(dòng)”教學(xué)法,即讓學(xué)生在問題的驅(qū)動(dòng)下,帶著具體問題進(jìn)行知識(shí)點(diǎn)的學(xué)習(xí),有利于培養(yǎng)學(xué)生的學(xué)習(xí)能力。在解決問題的過程中,引導(dǎo)學(xué)生主動(dòng)去探究,按照“提出問題、分析問題、解決問題”的思路,解決每一個(gè)問題。學(xué)生完成一個(gè)問題后,要及時(shí)進(jìn)行交流、演示、討論并點(diǎn)評(píng),對(duì)程序中存在的問題進(jìn)行指點(diǎn),加強(qiáng)學(xué)生對(duì)知識(shí)點(diǎn)的理解和掌握,最后進(jìn)行歸納總結(jié)。
4.3舉一反三教學(xué)法
通過歷年學(xué)生的考試情況,發(fā)現(xiàn)有的題目平時(shí)練習(xí)過,但是考試的時(shí)候如果題目有所變化,有的學(xué)生就無從下手。針對(duì)這一現(xiàn)象,筆者在授課期間在原有例題的講解中,逐步改變條件或者增加條件,讓學(xué)生分析各種情況,提高學(xué)生舉一反三的編程能力。
例如,C語言中提供三種循環(huán),即while循環(huán)、do-while循環(huán)和for循環(huán)。三種循環(huán)可以用來處理同一問題,一般情況下它們可以互相代替。三種循環(huán)結(jié)構(gòu)學(xué)習(xí)的重點(diǎn)在于弄清它們相同與不同之處,以便在不同場(chǎng)合下使用,所以要清楚三種循環(huán)的格式和執(zhí)行過程。
完成以后,總結(jié)它們的異同點(diǎn):用while和do-while循環(huán)時(shí),循環(huán)變量的初始化的操作是在循環(huán)體之前,而for循環(huán)一般在表達(dá)式1中進(jìn)行的。while和do-while在循環(huán)體內(nèi)修改循環(huán)變量的值,而for循環(huán)一般在表達(dá)式3中修改循環(huán)變量的值。while循環(huán)是先判斷條件,后執(zhí)行循環(huán)體,而do-while循環(huán)是先執(zhí)行循環(huán)體后判斷條件。一個(gè)稱為“當(dāng)型”,一個(gè)稱為“直到型”。如果初始條件為假,while循環(huán)和for循環(huán)的循環(huán)體一次也不做,而do-while的循環(huán)體會(huì)執(zhí)行一次。通過這種練習(xí)學(xué)生就能更好地掌握三種循環(huán)。
4.4協(xié)作式教學(xué)法
教師成立教學(xué)小組,學(xué)生成立學(xué)習(xí)小組,利用網(wǎng)絡(luò)環(huán)境的開放性、交互性實(shí)現(xiàn)資源共享,優(yōu)勢(shì)互補(bǔ)。E-mail、電子作業(yè)、網(wǎng)上答疑、網(wǎng)上聊天、BBS等,教師和學(xué)生之間由傳統(tǒng)的教與學(xué)的關(guān)系,轉(zhuǎn)化為平等討論、互相促進(jìn)的關(guān)系。
總之,高職院校C語言的教學(xué)改革應(yīng)該達(dá)到這樣的目的:首先,讓學(xué)生對(duì)程序設(shè)計(jì)產(chǎn)生興趣,從學(xué)習(xí)C語言中找到寫程序的樂趣;其次,讓學(xué)生確定自己一定能學(xué)會(huì)C語言;最后,讓學(xué)生知道如果想做程序設(shè)計(jì)方面的工作,自己應(yīng)該如何深入下去。如果這些目的能夠達(dá)到了,教學(xué)改革應(yīng)該算是成功的。