教學目標
1. 使學生理解循環語句的概念,初步掌握循環語句的語法規則和使用方法。
2. 能準確地確定初值、終值及步長,設計簡單的循環程序。
3. 激發學生學習熱情,培養學生的分析問題和解決問題的能力,動手實踐優化解決問題。
教學重點、難點
1. 重點:FOR/NEXT循環語句的特點,初值、終值及步長的確定
2. 難點:利用FOR/NEXT語句解決問題的方法和思路
教學方法
任務驅動、講練結合、作品引導
教具準備
1.示范演示文稿
2.多媒體
3.練習題
4.興趣制作點撥文檔
教學過程
一、通過兩個程序對比,引出循環概念
1.以繪制同心圓為例,復習順序結構的程序設計方法
[師] 我們學習了程序的基本結構——順序結構,并運用一些語句繪制了不同的圖形,現在請同學們來完成下面的任務:
[任務一] 繪制一組同心圓
已知:圓心的坐標為(1000,1000),最小圓的半徑為100,相鄰半徑之差為100,編寫程序繪制5個同心圓。
[用課件,顯示題目要求及運行結果]
[師問] 用什么語句?
[生答] 繪制圓的語句。
[師] 圓心坐標是多少?
[生答] 1000,1000
[師] 非常好,每個圓的半徑是多少?
[生答] 100、200、300、400、500
[師意] 復習鞏固舊知識(順序結構、繪制圓的語句),使學生自覺進入教學情境。
[生] 上機調試程序,繪制同心圓
[師] 巡視答疑,展示學生程序,并在黑板上寫出程序代碼:
Private sub form1_activate()
Circle (1000,1000), 100,vbred
Circle (1000,1000), 200, vbred
Circle (1000,1000), 300, vbred
Circle (1000,1000), 400, vbred
Circle (1000,1000), 500, vbred
End sub
2. 對完成同心圓的程序采用循環程序結構設計,對比順序結構,讓學生初步建立起循環結構的概念
[分析并解答問題]
[師問1] 仔細觀察以上程序語句中相同的部分是什么?不同的部分是什么?
[生答] 圓心相同,半徑不同
[師問2] 如果將以上程序語句中的半徑用變量r來代替,語句將如何變化?半徑r的取值范圍是多少?相鄰半徑之間的間隔是多少?
circle (1000,1000),r,vbred
circle (1000,1000),r,vbred
circle (1000,1000),r,vbred
circle (1000,1000),r,vbred
circle (1000,1000),r,vbred
[生1答] 100到500
[生2答] r按100遞增
[師意] 激發學生的學生熱情,使學生積極思考、主動參與。
[師] 通過上面的程序代碼,我們不難發現這段代碼實際上重復了同一個操作,circle (1000,1000),r,vbred,只不過是每次是有規律的變化而已。我們可以使用VB提供的循環語句來實現這種重復操作功能。
[師] 展示用循環語句完成上述操作的方法,給出程序代碼及運行結果
Private sub form1_activate()
For r=100 to 500 step 100
Circle (1000,1000), r,vbred
Nextr
End sub
[師] 同一個問題,我們可以采取不同的方法解決問題,而且第二種方法使用的語句更簡練
[師意] 對比兩種解題方案,讓學生感知高效解決問題的方法。
二、學生通過初步練習,理解循環語句的功能及特點
1.理解for/next語句的格式功能
[師] 演示課件,for/next的語句格式及功能,并講授
For——Next語句格式
For 循環變量=初值 To 終值 [Step 步長]
循環體
Next 循環變量
流程圖如圖1所示。

參數說明:
(1) 循環控制變量的初值和終值可以是整數或字符等。
(2) 步長是控制變量每次增長的數值,缺省值為13、for/next需要成對出現,但next后的控制變量可省略不寫。
(3) 循環體可以是一條basic語句,也可以是多條basic 語句,甚至可以是另一條循環語句。
2.學生通過初步練習,了解初值、終值及步長的確定
[師] 根據for/next的執行過程,我們通過分析下面程序來看看for/next的工作過程
[練習一] 寫出下列程序的運行結果

Forp=2To13Step 3
Printp ,
s=s+p
Next p
Print \"p=\";p,\"s=\";s
輸出P的值分別為:
2 5 811
p=14 s=26
出了循環體后,控制變量為: p=14
[師生] 通過問答,分析運行結果
[師意] 加強學生對循環語句結構及執行過程的理解,并強調退出循環時控制變量執行情況。
[練習二] 打開練習題,選擇正確答案
1.For m=1 to 5
Next m
該循環次數為( )
A)1 B)3C)5D)6
2.For m=20 tostep -2
Next
若循環語句的循環次數為5次,則終值是( )
A) 12B)10C)8D) 14
3.For n= to 13 step 2
Next n
若循環語句循環的次數為5次,則初值是( )
A)1B)2C)3D)4
4.For a=2*2 to 6
Print a;
Next a
輸出結果為( )
A) 456B) 23456
C) 3456D) 123456
[師生] 問、答
[師意] 通過選擇題,使學生進一步理解和掌握循環初值、終值和控制變量的關系
三、運用知識解決實際問題,在探究中深化for/next的功能及程序設計方法
1.通過填寫程序,要求學生初步掌握for/next語句的程序設計
[任務二] 補充程序,將上面任務一中的循環體語句Circle (1000,1000), r,vbred
如何修改使每個圓的圓心坐標隨半徑的取值每次遞增100,程序運行的結果如圖2所示:

Private Sub Form 1_ Activate( )
For r=10To 910 Step 100
Circle (1000+r, 1000+r), r,vbred
Nextr
End Sub
2.通過編寫和調試程序,使學生掌握用for/next解決實際問題
[任務三] 分別繪制5個圓、矩形、線(位置、顏色、大小、形狀不限)[師意] 是個拓展任務,學生通過對坐標、半徑的調整,制作出不同形狀的圖形。
[師] 通過改變坐標和半徑值,得到不同的效果圖
3.對學生作品進行評價,通過展示作品進行激勵教育,現時了解學生掌握情況
[學生作品展示] 制作圖形,真是豐富多彩,對每位學生的作品表揚
4.拓展空間,滿足不同層次學生的需求
[興趣制作] 完成基本任務后,學生點擊興趣制作鏈接到此,通過點撥進行制作如圖3所示的兩組圖形。

[點撥] 左圖:Circle (2000 + R, 1500 + R), R, RGB(255, 0, 0)
右圖:Circle (2000, 1200 + R), 200, VBCOLOR(10)
[師意] 給學生一個拓展的空間,滿足不同學生的需求。
[學生探究中的問題]
1. 語句參數中用,隔開
2. 循環體中使用控制變量
3. VB中的坐標系的應用(橫縱坐標的增大與減小)
4. 顏色的使用vbcolor(i)、rgb(r,g,b)、顏色常量
[本課小結]
1. For/next循環語句的特點:已知循環次數
2. 循環語句的重點:初值、終值、步長的確定
[師意] 再次明確和整理本課的重點及難點
[師意] 通過學生的作品展示,對學生進行激勵教育,鼓勵學生的創新意識。
[興趣制作] P102 1
[課后練習] 在數學中,我們學過一些數列的知識,如:等比數列、等差數列
1. 求1+2+3+……100的和
2. 求2+4+6+8+……100的和
3. 求1+1/2+1/3+1/4+……1/100的和
4. 求21+22+……2n的值
[師] 各門學科之間都是有聯系的,都不是孤立的,同學們要把知識動態化,多角度、多方式地去思考,掌握知識的內在聯系,提高解題能力,開闊自己的視野。課后請同學們完成這樣的程序設計作業(作業與數學知識聯系密切)
作者簡介:扈其兆老師是年輕的高級教師,從大學畢業后一直致力于職業學校的計算機教學工作。扈老師的知識面很廣,教學基本功非常扎實。從因特網技術到電子商務,從辦公自動化到程序設計,十多年的辛勤耕耘,桃李滿天下。