教學目標
知識與技能:理解程序設計的順序結構基本思想,掌握順序結構語句特點。
過程與方法:培養(yǎng)用算法分析問題的能力,能夠使用順序結構編寫簡單的程序解決具體問題。
情感態(tài)度與價值觀:體會用結構化方法解決數學問題的便捷性;明確結構化在程序設計中的重要作用。
教學重點
理解程序設計的順序結構基本思想。
教學難點
1 順序結構實現語句的格式和功能;2 編寫簡單的程序過程;3 變量的特點。
教學方法
任務驅動法、直觀演示法、師生互動法。
教學過程
情境導入
通過開始的學習,我們對VB編程有了初步的體驗,知道了計算機解決問題的過程和三種描述算法的方法。接下來我們應如何來實現算法和進行編程呢?
例如,有一次在上體育課的時候,a同學想和b同學做一個換球的游戲,同學們能不能幫他們出出主意?(如a原來拿籃球,b原來拿排球,交換后,a拿排球,b拿籃球)游戲規(guī)則:要求每次交換只允許每人手中最多有一個球。
依照人的正常邏輯,必有學生想到直接互拋法來交換兩個球的方法。分析算法,引出程序。
算法1直接互拋法
Stepl:a(或b)拿籃球;
Step2:b(或a)拿排球;
Step3:a將籃球(或排球)給b;
Step4:b將排球(或籃球)給a;
Step5:結束
程序可描述為。
Dim a asinteger
Dim b as integer
a=1
b=2
Print“交換前:a=”;a,“b=”.b
a=b
b=a
Prim”交換后:a=“;a,“b=”;b
運行程序不正確,設下疑點
提問:程序運行結果為什么會和我們交換的結果不一致呢?
講解:變量的特點,每個變量占用一個內存空間,有新的內容被送到這個變量中,舊的內容就被沖刷掉了。
結論:上述程序運行結果不能滿足要求,直接互拋法程序不成功。
算法2“第三人”交換法:第三人就像一個郵遞員
Stepl:a(或b)拿籃球,b(或a)拿排球
Step2:輸出交換前a、b的值
Step3:第三人<-a(或b)
step4:第三人<-a(或a)
Step5:b(或a)<-第三人
Step6:輸出交換后a、b的值
Step7:程序結束
程序程序可描述為。
Dim aasinteger
Dimb asinteger
a=1
b=2
Print“交換前:a=”;a,“b=”;b
C=a
a=b
b=c
Print“交換后:a=”;a,“b=”;b
結論:第三人就像一個郵遞員,它是a和b換球的中轉站,交換真方便,
鞏固練習
有兩個錐形瓶,1號瓶里面裝的是溴水,2號瓶里面裝的是水,如果我們要交換兩個瓶子里的液體,該怎么辦?
學生練,老師講:利用第三個變量c來進行交換,交換的過程如下。
C=A
A=B
B=C
第三步:輸出交換后A、B的值。
流程圖:由學生上講臺完成。編寫程序代碼:師生互動完成。
算法3(拓展題)針對體育課的那個題,若允許某一瞬間有人可以同時拿著兩個球,程序應該怎么編寫?
師生共同討論完成:算法復雜,學生可能無法想到,理解程序的運行結果即可。
a=1
b=2
Print“交換前:a=”;a,“b=”;b
a=a+b
b=a-b
a=a-b
Print”交換后:a=”;a,“b=”;b
隨堂練習
1 以下是一段VB程序。
a=1
b=a+1
c=a+b
它的基本結構屬于( )
A、順序結構B、選擇結構C、循環(huán)結構D、樹型結構
2 下列VB程序運行后,變量x的值為( )
x=2
Printx+l
Print x+2
A、2 B、3 C、5 D、8
課堂總結
總結(師):縱觀上述三個程序,運行程序,不難發(fā)現代碼是按照由上到下的順序一行一行地執(zhí)行。這種結構叫順序結構。
順序結構定義:在程序執(zhí)行過程中,語句按先后順序一行一行執(zhí)行,沒有分支,沒有重復,直到程序結