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