趙玉榮
【摘 要】隨著科技水平的不斷發(fā)展,信息技術(shù)的發(fā)展以及應(yīng)用可謂日新月異,這對中小學(xué)信息技術(shù)教育要求越來越高。目前程序設(shè)計語言已經(jīng)進入小學(xué)高年級的課堂。如何教好循環(huán)結(jié)構(gòu)編程,這是擺在小學(xué)信息技術(shù)教師面前尤為突出的問題。本文以“for循環(huán)”為例,對信息技術(shù)中循環(huán)結(jié)構(gòu)編程教學(xué)進行了探究。
【關(guān)鍵詞】程序設(shè)計語言 循環(huán)結(jié)構(gòu) “for循環(huán)” 教學(xué)實例
隨著科技水平的不斷發(fā)展,信息技術(shù)發(fā)展以及應(yīng)用日新月異,這對我們中小學(xué)信息技術(shù)教育要求越來越高。目前程序設(shè)計語言已經(jīng)進入小學(xué)高年級的信息技術(shù)課程。程序設(shè)計對初、高中學(xué)生來說,都覺得比較困難、難于理解,而小學(xué)階段的學(xué)生,數(shù)學(xué)知識還不是很豐富,語言理解力又較差,這必然給我們的教學(xué)帶來很大的壓力。任何一門結(jié)構(gòu)化程序設(shè)計語言都有三種結(jié)構(gòu),分別是順序結(jié)構(gòu)、分支結(jié)構(gòu)和循環(huán)結(jié)構(gòu),而在這三種結(jié)構(gòu)中,循環(huán)結(jié)構(gòu)既是教學(xué)的重點,也是教學(xué)的難點。如何教好循環(huán)結(jié)構(gòu)編程,這是擺在我們小學(xué)信息技術(shù)教師面前尤為突出的問題。下面筆者以for循環(huán)為例從以下幾個方面談?wù)剬ρh(huán)結(jié)構(gòu)編程教學(xué)的幾點看法。
一、聯(lián)系實際,激發(fā)興趣
在日常學(xué)習(xí)和生活中,經(jīng)常會遇到有重復(fù)的問題,比如要求打印輸出10個“你好”,求“10!”之類的問題。教學(xué)過程中教師以如何解決這些現(xiàn)實問題為切入點,適時引入循環(huán)語句,學(xué)生們會發(fā)現(xiàn)原來10條語句可以用一條循環(huán)語句來實現(xiàn),使學(xué)生懂得可以利用循環(huán)程序設(shè)計來解決這些實際問題,以此激發(fā)學(xué)生的學(xué)習(xí)興趣,提高學(xué)生學(xué)習(xí)的主動性,進而使學(xué)生產(chǎn)生對循環(huán)結(jié)構(gòu)程序設(shè)計的強烈求知欲。有了學(xué)生的學(xué)習(xí)主動性,就為后面循環(huán)結(jié)構(gòu)程序教學(xué)過程順利進行打下了基礎(chǔ)。
二、循序漸進,由易到難
在循環(huán)結(jié)構(gòu)程序教學(xué)時,教師一定要精心設(shè)計教學(xué)實例,設(shè)計的教學(xué)實例一定要做到先易后難。如果不做到這一點,我們的教學(xué)將是一個失敗的教學(xué),弄不好會直接挫傷學(xué)生對程序設(shè)計語言學(xué)習(xí)的自信心。我們不妨先從在電腦屏幕上打印10個“你好”開啟我們的循環(huán)結(jié)構(gòu)教學(xué),讓學(xué)生初步感受到循環(huán)的魅力,激發(fā)他們的學(xué)習(xí)興趣。學(xué)生們在隨后分組合作上機實踐中,可能會有小組打印上百個甚至上千個“你好”,這就說明學(xué)生對循環(huán)的設(shè)計感到有興趣了,初步了解到了循環(huán)的魅力和作用。從而使學(xué)生了解到,原來循環(huán)程序可以解決我們現(xiàn)實生活中很多問題。
接著不妨再用編程實現(xiàn)s=1+2+……+10 這個程序繼續(xù)我們的教學(xué),同時引導(dǎo)學(xué)生利用好循環(huán)控制變量,這時學(xué)生們會發(fā)現(xiàn)循環(huán)控制變量是非常有利用價值的。這樣通過精心設(shè)計的教學(xué)實例,逐層深入,使教學(xué)過程循序漸進,由易到難。學(xué)生通過這一系列的教學(xué)實例就會慢慢理解和接受循環(huán)程序設(shè)計。
三、突出重點,分解難點
在循環(huán)編程的教學(xué)過程中,教師一定要用恰當?shù)慕虒W(xué)手段,把教學(xué)的難點逐一分解。教學(xué)手段會因不同的教師而各不相同。筆者在教授打印“九九乘法口訣表”時就采用了以下的教學(xué)手段。針對這個循環(huán)程序難度較大,學(xué)生難于理解,不易編寫的情況,首先把復(fù)雜的計算機語言變?yōu)楹唵蔚臐h字語言,然后層層簡化,最后反過來再用計算機語言替換這些漢字語言。
具體教學(xué)過程是這樣的,首先用投影機把“小九九乘法口訣表”投射到黑板上。然后和學(xué)生們一起分析“小九九乘法口訣表”的特點,很快筆者和學(xué)生們發(fā)現(xiàn),“小九九乘法口訣表”有這樣的規(guī)律,它共有9行等式,并且每行等式的最后有一個換行,因此筆者啟發(fā)學(xué)生編寫了這樣的漢字語言:
for (i=0;i<=9;++i)
{打印第i行等式;
打印一個換行;}
很明顯,要打印1個換行非常簡單,只需用語句print(“\n”)即可實現(xiàn)。下面如何打印第i行等式就是我們要解決的問題了,筆者和學(xué)生們一起分析后發(fā)現(xiàn),第1行有1個等式,第2行有2個等式,然后啟發(fā)學(xué)生第i行會有幾個等式呢?大部分學(xué)生會指出第i行有i個等式,因此可啟發(fā)學(xué)生編寫出這樣的漢字語言:
for(j=0;j<=i;j++)
打印第i行的第j個等式;
下面分析第i行的第j個等式是由什么元素組成的,就是我們最后需要解決的問題了,通過對第i行的每個等式分析,可以清楚地知道第i行的第j個等式是這樣的:j*i=j*i。因此,可啟發(fā)學(xué)生編寫出這樣的計算機語言語句:
print(j,”*”,i,”=”,j*i,” ”)
同時為了“小九九乘法口訣表”的美觀,在每個等式后要加一個空格。經(jīng)過這樣的處理,難點也被層層分解。最后只需引導(dǎo)學(xué)生用計算機語言替代那些漢字語言,就完成“小九九乘法口訣表”的打印了。
for (i=0;i<=9;++i)
{for(j=0;j<=i;j++)
print(j,”*”,i,”=”,j*i,” ”);
print(“\n”);}
通過把復(fù)雜的難于理解的程序經(jīng)過層層分解,難點也一層一層被分解、被突破。經(jīng)過這樣的教學(xué)過程,提高了學(xué)生分析問題、解決問題的能力,進一步加深了對循環(huán)結(jié)構(gòu)程序的理解。同時,這樣的教學(xué)也會使學(xué)生對其他理科的學(xué)習(xí)有所幫助。
四、合理利用輔助教學(xué)手段
合理利用高科技輔助教學(xué)手段,不僅可以節(jié)省時間,提高課堂教學(xué)效率,而且有助于突破教學(xué)難點。對于程序的執(zhí)行過程,就可以用flash等軟件制作一個簡單的小動畫,演示程序的執(zhí)行過程。在該動畫中,將程序的每一次重復(fù)過程簡單明了地顯示出來。同時,循環(huán)控制變量的值在每一次重復(fù)變化中也會顯示出來,有助于提高學(xué)生對循環(huán)執(zhí)行過程的理解。這里需要注意的是,不要一味利用微視頻等高科技輔助教學(xué)手段,還應(yīng)該與傳統(tǒng)板書相結(jié)合。比如,對程序執(zhí)行過程的分析,除播放動畫之外,還應(yīng)進行詳細的板書,使學(xué)生能夠充分理解和掌握循環(huán)結(jié)構(gòu)程序的執(zhí)行過程。
循環(huán)程序設(shè)計是所有結(jié)構(gòu)化程序設(shè)計語言的重要知識點,也是所有語言的教學(xué)重難點。在教學(xué)實施過程中,教師要聯(lián)系生活實際問題,激發(fā)學(xué)生的學(xué)習(xí)積極性,提高他們的學(xué)習(xí)興趣。同時,教師要循序漸進,由易到難,提高學(xué)生的學(xué)習(xí)自信心。針對不同的教學(xué)實例,教師要運用適當?shù)慕虒W(xué)方法,合理利用輔助教學(xué)手段,突破教學(xué)的難點。這樣才能使學(xué)生真正理解和掌握循環(huán)程序結(jié)構(gòu),為學(xué)生更深層次的計算機語言學(xué)習(xí)奠定基礎(chǔ)。