第3章 控制結構程序設計.ppt_第1頁
第3章 控制結構程序設計.ppt_第2頁
第3章 控制結構程序設計.ppt_第3頁
第3章 控制結構程序設計.ppt_第4頁
第3章 控制結構程序設計.ppt_第5頁
已閱讀5頁,還剩110頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、第3章 控制結構程序設計,三種結構: 順序結構:程序順序地執(zhí)行。 分支結構:根據條件來控制流程。 循環(huán)結構:重復地執(zhí)行一組指令。,語句的功能 執(zhí)行運算、控制程序流程,三種基本結構,1、順序 2、選擇 3、循環(huán),順序結構,1. 賦值語句 格式:變量名表達式 對象名.屬性名表達式 作用:將表達式的值賦值給變量名或對控件設定屬性值。 x = a + 10*b Text1.Text = Hello,賦值語句,說明: 執(zhí)行過程:先求表達式的值,然后將值賦值給左邊的變量。 右邊的表達式可以是變量、常量、函數調用等特殊的表達式。,賦值語句,值,數學:N=N+1,VB:N=N+1,變量,3. 不要將“”理解為

2、數學上的等號,將等號右邊值賦給左邊!,Dim N As Integer N = 5 N = N +1 N = ?,賦值語句,4賦值符號“=”左邊一定只能是變量名或對象的屬性引用,不能是常量、符號常量、表達式。 下面的賦值語句都是錯的: 5=X 左邊是常量。 Abs(X)=20 左邊是函數調用,即是表達式。,賦值語句,5. 賦值符號“=”兩邊的數據類型一般要求應一致。若不一致,則以左邊變量或對象屬性的數據類型為基準。 數據類型不一致時,轉換規(guī)則: 若都是數值型,但精度不同,強制轉換成左邊變量的數據精度。,如:X%=3.54159 執(zhí)行后,x的值是4 Y!123 執(zhí)行后將整數123轉換成實數123

3、.0,賦值給Y,賦值語句,若右邊表達式時字符串,左邊變量是數值型,自動轉換成數值類型后再賦值。若表達式有非數值字符或空串,則出錯。,任何非字符類型數據賦值給字符類型,都將自動轉換為字符類型。,如:X%=“123” X的值是123 Y”123A” 出錯,提示類型不匹配,如:S1$=123 S1的值是”123” S2$True S2的值是”True”,賦值語句,當邏輯量賦值給數值型時,True轉換為1,F(xiàn)alse轉換為0;反之當數值型賦值給邏輯型時,非0轉換為True,0轉換為False。,如:A%=True 將True轉換為數值1賦值給A Dim x as boolean x-5 -5轉換成Tr

4、ue賦值給x,賦值語句,注意:實現(xiàn)兩個變量的交換,必須借助 中間變量!,兩個數交換過程,t=x : x=y: y=t,輸入與輸出,輸入輸出的常見方法: 使用Print 使用控件(如TextBox)進行輸入輸出 使用InputBox,MsgBox 函數,使用Print方法輸出數據,功能:在窗體或其他圖形對象上輸出信息。 格式: 對象名稱.Print表達式表,|;,提示:對象只有三種對象分別為:窗體(Form),圖片框(PictureBox)和打印機。,使用控件輸入與輸出,使用控件進行輸入:控件屬性值在等號右邊。 A =txt_a.text B =txt_b.text C =txt_c.text

5、使用控件進行輸出:控件屬性值在等號左邊。 Txt_x1.text = x1 Txt_x2.text = x2,用戶交互函數,1. 數據的輸入InputBox函數 用于產生一個對話框,以作為數據輸入的界面,等待用戶輸入,并且返回所輸入的內容。函數的返回值是字符串。,用戶交互函數,InputBox函數格式 InputBox(提示信息,標題,默認值 ,橫坐標,縱坐標 ) 例如,要在屏幕上顯示如下的對話框:,例如:有下列語句如下: Dim x As String x = InputBox(請輸入你的姓名, 輸入姓名, John) 語句執(zhí)行后打開如下對話框。,用戶交互函數,用戶交互函數,Msgbox函數

6、:用于彈出一個對話框,返回值是整數。 函數形式: 變量% = MsgBox (提示信息 ,對話框樣式 ,標題) 過程形式: MsgBox 提示信息 ,對話框樣式 ,標題 說明:(1)各參數的含義與Msgbox語句相同 (2)函數形式有返回值,類型為整數,過程形式沒有返回值,只是顯示信息。,2. MsgBox函數和MsgBox過程,用戶交互函數,提示信息:在對話框中顯示的信息。 對話框樣式 :按鈕、圖標的種類。 教材P59頁表3-1 標題:對話框標題信息,參數說明:,MsgBox “hello,你好,提示信息,命令按鈕,MsgBox 注意:你輸入的數據不正確,2+48,錯誤提示,例要在屏幕上顯示

7、圖示的對話框:,注意:你輸入的數據不正確,MsgBox,vbAbortRetryIgnore+vbExclamation,錯誤提示,例如:補充實驗3.3 Private Sub Command1_Click() Dim r As Double, a As Double Const PI = 3.14 r = InputBox(請輸入半徑) a = PI * r * r MsgBox 半徑為: ”*”;j;”=”;i*j Next j Next i,補充例5 打印九九乘法表,補充例題6,下列程序段的執(zhí)行結果為_。 N = 0 For I = 1 To 3 For J = 5 To 1 Step

8、-1 N = N + 1 Next J, I Print N; J; I A: 12 0 4 B: 15 0 4 C: 12 3 1 D: 15 3 1,B: 15 0 4,例3.11 P72,將一張面值100的人民幣換成100張5元,1元和0.5元的鈔票,要求每種零鈔至少不少于1張,問有哪些組合? 分析:用X、Y、Z來分別代表5元,1元和0.5元的零鈔的張數。得到方程 X+Y+Z=100 5X+Y+0.5Z=100 數學上無法得到解。采用窮舉法,利用循環(huán)求解。,Private Sub Form_Click() Dim X%, Y%, Z%, N% Print 5元 1元 0.5元 N = 0

9、 For X = 1 To 100 For Y = 1 To 100 For Z = 1 To 100 If X + Y + Z = 100 And 5 * X + Y + 0.5 * Z = 100 Then Print X, Y, Z N = N + 1 End If Next Z Next Y Next X Print 共有 是素數 Else Print N; 不是素數 End If,補充例題9,求100以內的素數 分析:知道如何判斷一個數是否是素數的方法后,我們可以利用雙重循環(huán)判斷一個區(qū)域范圍內的數是否是素數。,補充例題10,求100 999 之間的水仙花數 什么是“水仙花數” 所謂“

10、水仙花數”是指一個三位數,其各位數字立方和等于該數本身。 例如:153是一個“水仙花數”,因為 153=135333。 解題的關鍵是如何分離出個位,十位,百位上的數,Dim a, b, c, i As Integer For a = 1 To 9 For b = 0 To 9 For c = 0 To 9 If a * 100 + b * 10 + c = a 3 + b 3 + c 3 Then Print a * 100 + b * 10 + c End If Next Next Next,補充例題11,如何從一個三位數中分離百位數、十位數、個位數。 假設三位數i的各位數為a,十位數為b,

11、百位數為c.分離出這三個數的過程如下: a = i Mod 10 b = i 10 Mod 10 c = i 100,補充例題12,求Fibonacci數列:1,1,2,3,5,8,的前40個數 什么是Fibonacci數列 F1=1 n=1 F2=1 n=2 Fn=Fn-1+Fn-2 n3,補充例題,Private Sub Command1_Click() Dim f1 As Long, f2 As Long f1 = 1: f2 = 1: j = 0 For i = 1 To 20 Print f1; f2; f1 = _ f2 = _ Next End Sub,Print(String(

12、i,*),Next,Dim i As Integer,For i=1 To 5,補充例題13,打印如下圖案:,For i=1 to 5,print spc(i-1);string(i,”*”),Next,Dim I as integer,補充例題 13,打印右圖圖案:,S=6 S=6 S=7 S=11 S=20 S=36,補充例題14,寫出程序運行結果: Dim i as integer,s as integer For i=0 to 4 step 2 s=s+i Next print s=;s Print For i=0 to 4 s=s+i*i; print s=;s Next,1. Ex

13、it 語句,Exit 語句用于退出 Do.Loop、For.Next、Function或Sub代碼塊。 對應的使用格式為:Exit Do、Exit For、Exit Function、Exit Sub。 分別表示退出DO循環(huán)、For循環(huán)、函數過程、子過程。,其它控制語句,Private Sub Form_Click() Dim I%, Num% Do While True 建立無窮循環(huán)。 For I = 1 To 100 循環(huán) 100 次。 Num = Int(Rnd * 100) 生成一個099的隨機數。 Select Case Num Case 10: Exit For 退出 For.Next 循環(huán)。 Case 50: Exit Do 退出 Do.Loop 循環(huán)。 Case 64: Exit Sub 退出子過程。 End Select Next I Loop End Sub,Exit語句的使用,2. End 語句 形式: End 功能:結束一個程序的運行。 在Visual Basic中還有多種形式的End語句,用于結束一個程序塊或過程。 其形式有: End If End Select End Type 它們與對應的語句配對使用。,End With End Sub End Function,其

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論