邵曉舟
摘 要: 隨著科技的不斷發(fā)展,計(jì)算機(jī)語(yǔ)言編程教育作為計(jì)算機(jī)教學(xué)中極其重要的一部分逐漸得到了大家的重視。如何培養(yǎng)學(xué)生對(duì)計(jì)算機(jī)語(yǔ)言編程的興趣,提高學(xué)生學(xué)習(xí)的效率,筆者以職高學(xué)生教育經(jīng)歷入手,通過對(duì)學(xué)生學(xué)習(xí)習(xí)慣和語(yǔ)言編程特點(diǎn)的分析,結(jié)合教學(xué)實(shí)例中的教學(xué)方法,希望能夠?qū)逃ぷ髦薪處焸冇兴鶐椭?/p>
關(guān)鍵詞: 計(jì)算機(jī);語(yǔ)言編程;教學(xué)方法
引言
對(duì)于職高的學(xué)生而言,計(jì)算機(jī)編程的學(xué)習(xí)過程中包含編程內(nèi)容、學(xué)習(xí)方法以及計(jì)算機(jī)編程獨(dú)特的思維方式,而且每部分存在較大差異,大部分學(xué)生反映計(jì)算機(jī)語(yǔ)言編程比較難懂[3]。為了使學(xué)生能夠有效學(xué)習(xí)計(jì)算機(jī)語(yǔ)言編程這門學(xué)科,筆者從教學(xué)經(jīng)歷中摸索出一套適合職高學(xué)生的學(xué)習(xí)方法,下面進(jìn)行具體闡明。
一、重視學(xué)習(xí)方法,培養(yǎng)學(xué)生的思維能力
計(jì)算機(jī)編程教育對(duì)職高學(xué)生而言是一門比較陌生的一門學(xué)科。學(xué)生在初中階段一般都是依靠記憶、模仿來(lái)學(xué)習(xí)知識(shí),從中忽略了理解和知識(shí)靈活運(yùn)用的過程。所以大部分學(xué)生學(xué)習(xí)編程語(yǔ)言的時(shí)候就是單單依靠記憶來(lái)學(xué)習(xí),至于為什么是這樣,還能不能用另外的方法代替等這種思維在學(xué)生中是很少見的。針對(duì)這種情況,在開始講授這門課的時(shí)候要將這門課的作用、內(nèi)容概況、以及新的學(xué)習(xí)方法給學(xué)生講清楚,以免讓學(xué)生走彎路。另外,我們還要注重學(xué)生學(xué)習(xí)興趣的培養(yǎng)、思維習(xí)慣的養(yǎng)成,更要注重學(xué)生學(xué)習(xí)方法的熏陶。在上課的過程中教師應(yīng)該拋棄滿堂灌的教學(xué)方式,避免滿堂灌的教學(xué)方式,每節(jié)課應(yīng)該預(yù)留出5分鐘的時(shí)間給學(xué)生討論,把剩余的課堂教學(xué)時(shí)間合理的分配:教師應(yīng)該用三分之一的時(shí)間把課本的內(nèi)容簡(jiǎn)明扼要的講解給學(xué)生,然后用三分之一的時(shí)間讓學(xué)生進(jìn)行總結(jié)學(xué)習(xí),剩下的時(shí)間就是老師進(jìn)行出題,讓學(xué)生探討,如何解決老師提出的問題。通過課堂講授、自我總結(jié)以及學(xué)習(xí)討論這個(gè)過程,學(xué)生能夠發(fā)現(xiàn)學(xué)習(xí)漏洞,方便差缺補(bǔ)漏,鞏固學(xué)習(xí)能力。
二、突出重點(diǎn),簡(jiǎn)化編程過程中難以理解的步驟
職高學(xué)生的文化課成績(jī)差異比較大,理解能力也有所不同,這就要求老師要因材施教,要在學(xué)生的理解范疇講解知識(shí)。教會(huì)學(xué)生編寫計(jì)算機(jī)語(yǔ)言程序是教學(xué)的重點(diǎn)內(nèi)容,也是難點(diǎn)內(nèi)容。我經(jīng)過幾年的教學(xué)發(fā)現(xiàn)這些難點(diǎn)主要表現(xiàn)在學(xué)生不會(huì)針對(duì)問題進(jìn)行分析,不會(huì)用計(jì)算機(jī)語(yǔ)言描述所提出的問題。針對(duì)這種現(xiàn)象,老師應(yīng)該讓學(xué)生采用逆向思維的方式,即從想要得到的結(jié)果出發(fā),中間經(jīng)過怎樣的處理,每一步的處理可以用那些已知條件,把這個(gè)分析過程用簡(jiǎn)單的文字表達(dá)出來(lái),再畫一個(gè)框圖,框圖的內(nèi)容每一部分用文字或者符號(hào)去表達(dá)。對(duì)于一些難以理解的編程問題還可以用打比方的方法講授給學(xué)生。比如變成這過程中經(jīng)常遇到兩個(gè)變量A和B值的問題。學(xué)生會(huì)直接用“A=B”來(lái)代替,這樣就會(huì)減少一個(gè)變量。運(yùn)用打比方的方法,有兩個(gè)杯子,一個(gè)杯子貼上A,里面裝有黑墨水,另外一個(gè)貼上B,里面裝有藍(lán)墨水,現(xiàn)在要把A換成藍(lán)墨水,就需要先借助另外一個(gè)杯子C才能完成。
三、采用實(shí)例介紹專有名詞,讓學(xué)生更好理解
在計(jì)算機(jī)編程語(yǔ)言學(xué)習(xí)的過程中,通常讓學(xué)生先學(xué)一些簡(jiǎn)單的例子。例如,編寫一個(gè)求解一元二次方程X2-7X+12=0的程序。顯然這個(gè)方程的根是受到方程系數(shù)的影響,我們可以看到二次項(xiàng)系數(shù)A=1,一次項(xiàng)系數(shù)B=-7,常數(shù)項(xiàng)C=12,求根公式如下
將系數(shù)帶入到求根公式的到的解是X1=3,X2=4。
如果編寫這個(gè)求解程序,我們要用三個(gè)變量A,B,C代替方程的系數(shù),判別式b2-4ac用另外一個(gè)變量D來(lái)代替,還要用一個(gè)平方根函數(shù)SQR()。編寫后的程序如下:
A=1:B=-7:C=12
D=B*B-4*A*C
X1= (-B+SQR (D))/2*A
X2= (-B-SQR (D))/2*A
PRINT X1, X2
END
通過這個(gè)簡(jiǎn)單的程序編寫,給同學(xué)們介紹了賦值語(yǔ)句和打印語(yǔ)句是如何編寫和應(yīng)用的。在介紹過簡(jiǎn)單的程序后,在介紹編程序的另外一種類型,選擇程序和條件語(yǔ)句。首先通過實(shí)例進(jìn)行講解,編寫程序解一元二次方程X2-X+1=0,此方程是一個(gè)沒有實(shí)數(shù)根的一元二次方程,所以只根據(jù)方程的系數(shù)不能求解方程。我們分析方程有沒有實(shí)數(shù)根的過程在計(jì)算機(jī)上呈現(xiàn)就是需要一個(gè)程序分析判斷,這個(gè)分析判斷就叫做條件語(yǔ)句。
在編程前要先畫流程圖,一元二次方程一般式AX2+BX+C=0的求解流程如圖1所示。流程圖中的三角形框圖代表分析判別,也就是條件語(yǔ)句,流程圖中的分叉為程序進(jìn)行自動(dòng)選擇過程。
從上例中可以看到方程的求解過程只需要求解一次,這種求解方法叫做順序程序,還有另外一種程序叫做循環(huán)程序。循環(huán)程序的提供數(shù)據(jù)的語(yǔ)句有三種分別是賦值語(yǔ)句(LET語(yǔ)句)、鍵盤輸入語(yǔ)句(INPUT語(yǔ)句)和讀置數(shù)語(yǔ)句(READ/DATA語(yǔ)句)。若一元二次方程需要求解20次,若使用賦值語(yǔ)句需要編寫多次程序,可想而知,這種方法是比較麻煩的。在這種情況下引入鍵盤輸入語(yǔ)句,這種語(yǔ)句可以為變量提供數(shù)據(jù),每次運(yùn)行時(shí),執(zhí)行INPUT語(yǔ)句,操作員從鍵盤輸入給變量,求解20次只需要編寫一個(gè)程序就可以了。編寫程序如下:
20 INPUT A, B, C
IF A=0 THEN GOTO 100
D=B * B-4*A*C
IF D≮0 THEN
X1=-B/(2*A)+SQR(-D)/(2*A)
X2=-B/(2*A)-SQR(-D)/(2*A)
PRINT X1; "I", X2; "I"
ELSE
X1=-B/(2*A)+SQR(D)/(2*A)
X2=-B/(2*A)-SQR(D)/(2*A)
PRINT X1, X2
END IF
GOTO 20
100 END
觀察此程序,使用了鍵盤輸入語(yǔ)句,在求解20次的情況下只需要編寫一個(gè)程序就能夠求解,在編寫程序方面節(jié)省了大量時(shí)間。但是這種方法需要等待操作員輸入數(shù)據(jù)后才能繼續(xù)運(yùn)算,降低了計(jì)算的效率。這就要引出循環(huán)語(yǔ)句(FOR/NEXT語(yǔ)句)的概念,這個(gè)功能主要是能夠重復(fù)同樣的操作,最后自動(dòng)退出。這種方法縮減了操作員手動(dòng)輸入的時(shí)間,提高了運(yùn)算效率。
通過比較簡(jiǎn)單的兩個(gè)一元二次方程我們由淺到深的分析了編寫程序的幾個(gè)專有名詞的使用,采用這種方法能夠讓學(xué)生更加深刻的記憶其使用功能。
計(jì)算機(jī)的語(yǔ)言編程是一個(gè)比較難學(xué)的科目,里面包含許多重點(diǎn)與難點(diǎn)需要同學(xué)去克服。我們作為教師,只要根據(jù)學(xué)生的特點(diǎn),選擇合理的教學(xué)方法,在此過程中把比較難懂的地方慢慢拆解開,學(xué)生在學(xué)習(xí)的過程中也會(huì)少走很多彎路。
參考文獻(xiàn)
[1]葉連杰, 計(jì)算機(jī)編程語(yǔ)言的發(fā)展與應(yīng)用[J] 信息與電腦 2014.
[2]陳晨, 高校計(jì)算機(jī)語(yǔ)言類編程教學(xué)特點(diǎn)及階段的探討[J] 亞太教育 2016.
[3]杜紀(jì)魁, 極限編程與計(jì)算機(jī)語(yǔ)言教學(xué)[J] 科教文匯 2008.