【學習課件】第三章程序流程控制_第1頁
【學習課件】第三章程序流程控制_第2頁
【學習課件】第三章程序流程控制_第3頁
【學習課件】第三章程序流程控制_第4頁
【學習課件】第三章程序流程控制_第5頁
已閱讀5頁,還剩107頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、第3章 程序流程控制 3.2 選擇結(jié)構(gòu)3.3 循環(huán)結(jié)構(gòu)3.4 綜合實例3.1 順序結(jié)構(gòu)1ppt課件3.1 順序結(jié)構(gòu)3.1.2 數(shù)據(jù)輸出3.1.3 數(shù)據(jù)輸入3.1.1 賦值語句3.1.4 卸載對象2ppt課件3.1.1 賦值語句1.賦值語句的一般的格式變量賦值: Let =屬性賦值: Let .= Dim a as integer Let a=100 a=100 兩個語句的功能相同3ppt課件2.賦值語句的含義 首先計算賦值號右邊表達式的值,然后將此值賦給賦值號左邊的變量名或?qū)傩悦?例:dim a as integer a=100 a=a+1 a=3*44ppt課件關(guān)鍵字Let為可選項,通常都

2、省略該關(guān)鍵字;“ = ”稱為賦值號。“表達式”可以是算術(shù)表達式、字符串表達式、關(guān)系表達式或邏輯表達式。5ppt課件賦值號不是數(shù)學上的等號。 例如:“a=3” 應讀作“將數(shù)值3賦給變量a”。賦值語句具有計算和賦值的雙重功能,它首先計算“=”右邊的表達式,然后把結(jié)果賦給“=”左邊的變量。6ppt課件 賦值語句要求右端表達式的類型與左端變量的類型相容。如果用字符串的形式表示數(shù)值,則可以將字符串賦給數(shù)值變量,也可將數(shù)值賦給字符串變量。 dim x as integer dim y as string x=“123 y=123 7ppt課件 但如果把非數(shù)值形式的字符串賦給數(shù)值變量,將會在編譯時出現(xiàn)錯誤。

3、只有數(shù)據(jù)類型相容時可以賦值,比如可以把單精度表達式賦給整型變量。 8ppt課件例3-1-1 賦值相容問題:9ppt課件設(shè)計如圖所示用戶界面,在窗體中增加一個命令按鈕Command1,兩個標簽Label1、Label2,兩個文本框Text1、Text2。輸入命令按鈕Command1的Click事件過程:10ppt課件Private Sub Command1_Click() Dim x As Integer (single) Dim y As String y = 100.23 x = y y = y + 20 Text1.Text = x Text2.Text = yEnd Sub 11ppt課

4、件例 3-1-2 交換兩個變量中的數(shù)據(jù)(此例為交換兩個標簽中的數(shù)據(jù))。用語句實現(xiàn)如下: C=A:A=B:B=C12ppt課件編寫代碼:Private Sub Command1_Click() Dim C As String C = Label2.Caption Label2.Caption = Label4.Caption Label4.Caption = CEnd Sub13ppt課件程序代碼可改為:Private Sub Command1_Click() Dim a, b, c As String a = Label2.Caption b = Label4.Caption c = a a

5、= b b = c Label2.Caption = a Label4.Caption = bEnd Sub14ppt課件3.1.2 數(shù)據(jù)輸出用Print方法輸出數(shù)據(jù) 用MsgBox輸出數(shù)據(jù) 用標簽控件輸出數(shù)據(jù) 15ppt課件1.用標簽控件輸出數(shù)據(jù) 標簽(Label)是VB中最常用的輸出文本信息的工具。Label控件顯示的文本用戶不能直接修改。在Label中顯示的文本是由Caption屬性控制的,該屬性可以在設(shè)計時通過“屬性”窗口設(shè)置或在運行時賦值。16ppt課件如:label1.caption=“計算機基礎(chǔ)部”例 3-1-3、例3-1-4 自己上機調(diào)試 P60錯誤17ppt課件2.用Prin

6、t方法輸出數(shù)據(jù) Print方法:Print方法用于在窗體(Form)、立即窗口(Debug)、圖片框(Picture)或打印機(Printer)等對象中顯示文字字符串或表達式的值,其語法格式如下:.Print ,|; 18ppt課件用Print方法輸出數(shù)據(jù) 說明: 對象名稱可以是窗體、立即窗口、圖片框或打印機。如果省略了對象名稱,則在當前窗體上輸出。例如: form2.Print “Visual Basic” Picture.Print “Visual Basic” Debug.Print “Visual Basic” Print “Visual Basic”19ppt課件用Print方法輸出

7、數(shù)據(jù) 表達式表是一個或多個表達式,它們可以是數(shù)值表達式、字符串表達式、關(guān)系表達式或布爾表達式。對于數(shù)值表達式,將輸出表達式的值;對于字符串,則原樣輸出;對于關(guān)系和布爾表達式,則輸出邏輯值True或False。20ppt課件用Print方法輸出數(shù)據(jù) 當輸出多個表達式時,各表達式之間用逗號“,”或分號“;”隔開。當表達式用逗號分隔時,則各輸出項按標準輸出(分區(qū)輸出)格式顯示,即:每隔14列為一個輸出區(qū),逗號后面的表達式的值將在下一個輸出區(qū)顯示。當使用分號分隔,則按緊湊格式輸出,即各輸出項之間無間隔地連續(xù)輸出。在一個Print語句中,可以將逗號和分號混合使用。 21ppt課件用Print方法輸出數(shù)據(jù)

8、通常,每執(zhí)行一個Print方法后將自動換行,即后面的Print將在新的一行上顯示信息。為了使上下兩個Print語句輸出內(nèi)容顯示在同一行上,需在上一個Print語句的最后加上逗號或分號。22ppt課件用Print方法輸出數(shù)據(jù)Print方法具有計算和輸出的雙重功能,對于表達式,總是先計算后輸出。Print 3*4=; 3 * 4Print 3*4=, 3 * 4Print 2 323ppt課件用Print方法輸出數(shù)據(jù)與Print方法有關(guān)的函數(shù) Tab函數(shù)在Print方法中,可以使用Tab函數(shù)對輸出結(jié)果進行定位。24ppt課件Tab函數(shù)的格式: Tab(n) Print Tab(5);”計算機”;T

9、ab(15);”世界” 當在一個Print方法中有多個Tab函數(shù)是,每個Tab函數(shù)對應一個輸出項,各輸出項之間用分號隔開。 25ppt課件Spc函數(shù):在Print方法中,用Spc函數(shù)跳過n列。其格式為: Spc(n)其中,n是在顯示或打印下一個表達式之前插入的空格數(shù)。Spc函數(shù)與輸出項之間用分號隔開。26ppt課件例如: Print “計算機”;Spc(5);“世界” Spc函數(shù)與Tab函數(shù)的作用類似,可以互相代替。但需要注意,Tab函數(shù)從對象的左端開始計數(shù),而Spc只表示兩個輸出項之間的間隔。27ppt課件3.用信息對話框輸出數(shù)據(jù) 在VB中,對于一些簡單的信息的輸出,可以使用信息框函數(shù)Msg

10、Box。該函數(shù)在信息對話框中顯示信息,等待用戶單擊按鈕,并返回一個整數(shù)值,以表明用戶單擊了哪個按鈕。若不需要返回值,則可以使用MsgBox的命令形式。28ppt課件用信息對話框輸出數(shù)據(jù)MsgBox函數(shù)的語法格式: 變量=MsgBox( , ,)MsgBox命令的語法格式: MsgBox , ,29ppt課件用信息對話框輸出數(shù)據(jù)說明: 為對話框中顯示的提示文本,最大長度為1024個字符,對話框的高度和寬度隨的增加而增加。在 中可以使用硬回車符Chr(13)使文本換行。 30ppt課件 用于控制對話框中按鈕的數(shù)目和圖標樣式,一般有4個參數(shù)。 可以省略,若省略時默認值為0,即只顯示一個“確定”按鈕,

11、而且此按鈕為默認按鈕,此時逗號分割符不能省略。 31ppt課件 表示對話框的標題,該選項可以省略。 Msgbox()的函數(shù)形式的返回值指明了在對話框中可能出現(xiàn)的7種按鈕: 確認、取消、終止、重試、 忽略、是和否。 例3-1-6 自己上機調(diào)試 32ppt課件用信息對話框輸出數(shù)據(jù)33ppt課件用信息對話框輸出數(shù)據(jù)34ppt課件用信息對話框輸出數(shù)據(jù)35ppt課件用信息對話框輸出數(shù)據(jù)36ppt課件3.1.3 數(shù)據(jù)輸入 用輸入框輸入數(shù)據(jù) 焦點和Tab間順序 用文本框控件輸入數(shù)據(jù) 37ppt課件1.用文本框控件輸入數(shù)據(jù) 文本框是最常用的數(shù)據(jù)輸入控件,它可以方便地在運行程序時讓用戶輸入和編輯文本,文本框也可

12、以顯示文本。 38ppt課件文本框的 Text屬性Text1.Text例3-1-7 自己上機調(diào)試例3-1-8 自己上機調(diào)試(Tag)屬性39ppt課件2.用輸入框輸入數(shù)據(jù)InputBox函數(shù)用于將用戶從鍵盤輸入的數(shù)據(jù)作為函數(shù)的返回值返回到當前程序中,此函數(shù)采用對話框界面,可以提供一個良好的交互環(huán)境。其語法為: 變量名=InputBox(, ,) 40ppt課件 指定在對話框中出現(xiàn)的文本。在中使用硬回車(CHR(13)可以使文本換行。對話框的高度和寬度隨著而增加,最多可有1024個字符。 指定對話框的標題。41ppt課件 用于顯示在輸入?yún)^(qū)內(nèi)的初始文本。 在輸入框內(nèi)輸入信息后,若用戶單擊“確定”按

13、鈕,將把輸入信息返回到變量中;若單擊“取消”按鈕,返回的將是一個空字符串。 42ppt課件a = InputBox(請輸入系統(tǒng)口令:, 口令輸入, *) 43ppt課件 焦點和Tab鍵順序 焦點(Focus) 焦點(Focus)就是光標,當對象獲得焦點時就可以接受用戶的輸入。 在Windows環(huán)境中,可以同時運行多個程序,但只有具有焦點的應用程序才有活動標題欄,才可以接受用戶的輸入。 44ppt課件 一個窗體上如果有多個文本框,只有具有焦點的文本框才能接受鍵盤輸入的文本內(nèi)容。 當對象獲得焦點時發(fā)生GetFocus事件當對象失去焦點時發(fā)生LostFocus事件僅當控件的Visible和Enabl

14、ed屬性被設(shè)置為真(True)時,控件才能接受焦點。45ppt課件 某些控件不具有焦點,如標簽、框架、計時器等。 可以用以下方法將焦點賦給對象:在程序運行時,用鼠標選擇對象、使用Tab鍵移動、或用快捷鍵在程序代碼中用SetFocus方法。 Text2.setfocus 46ppt課件Tab鍵順序Tab鍵順序就是用戶按Tab鍵時,焦點在窗體上的控件之間移動的順序。一般情況下,Tab順序由控件建立的先后順序確定。 47ppt課件不能獲得焦點的控件,以及無效的和不可見的控件,不具有TabIndex屬性,因而不包含在Tab鍵順序中。按Tab鍵時,這些控件將被跳過。48ppt課件通常,運行時按Tab鍵可

15、以選擇Tab順序中的每一個控件。若將控件的TabStop屬性設(shè)置為False,按Tab鍵時就會跳過該控件,但該控件的TabIndex順序值仍然保留。49ppt課件3.1.4 卸載對象(Unload語句) 當程序結(jié)束而從內(nèi)存中卸載窗體或要從內(nèi)存中卸載某些控件時,可以使用Unload語句。 Unload語句的語法格式為:Unload 對象名 如:Unload me (form1)50ppt課件說明: 對象名是要卸載的窗體對象或控件的名稱。 在卸載窗體前,會發(fā)生QueryUnload事件,然后是Unload事件。在其中任一事件過程代碼中設(shè)置Cancel參數(shù)的True可以防止窗體被卸載。 例 3-1-

16、6 自己調(diào)試 51ppt課件3.2 選擇結(jié)構(gòu)選擇結(jié)構(gòu)就是根據(jù)不同的情況做出不同的選擇,執(zhí)行不同的操作,它是程序設(shè)計中基本結(jié)構(gòu)之一。選擇結(jié)構(gòu)語句需要對某個條件做出判斷,根據(jù)這個條件的取值情況,決定執(zhí)行何種操作。52ppt課件VB種的選擇結(jié)構(gòu)語句分為:單條件選擇語句 (If 語句)多條件選擇語句 (Select Case 語句)53ppt課件3.2 選擇結(jié)構(gòu)3.2.2 Select Case 語句3.2.1 If 語句54ppt課件單行格式 IfThenElse 單行條件語句比較簡單,其語法格式: If Then Else 通常是關(guān)系表達式或邏輯表達式。該語句的功能是:如果“條件”的值為True,

17、則執(zhí)行,否則執(zhí)行。 55ppt課件說明: 單行結(jié)構(gòu)條件語句要求在一行內(nèi)書寫完畢,即不能超過一行255個字符的限度。 If ab Then c=a Else c=b56ppt課件 語句組1 和 語句組2 可以是簡單語句,也可以是用冒號分隔的多個語句。57ppt課件 Else 是可選項,當該項省略時,IF語句簡化為: If Then 它的功能為:如果條件為True,則執(zhí)行語句組1,否則執(zhí)行IF語句的下一個語句。 例3-2-1 P7158ppt課件 多行格式If語句 在單行結(jié)構(gòu)條件語句中,如果條件分支執(zhí)行的操作比較復雜,不能在一個邏輯行內(nèi)書寫完畢,可以使用多行結(jié)構(gòu)條件語句。59ppt課件多行If語句

18、又稱為塊If語句。語法格式: If Then Else End If60ppt課件說明: 在塊If語句中,If語句必須是第1行語句,End If語句是If塊的最后一個語句。61ppt課件 在程序運行到If塊時,首先判斷。如果條件為True,則執(zhí)行Then后的語句組1,否則執(zhí)行Else后的語句組2。當執(zhí)行完Then或Else之后的語句組后,則繼續(xù)執(zhí)行End If后的語句。 62ppt課件 語句組可以是單個語句,也可以是多個語句。當有多個語句時,可以分別寫在多行里;如果寫在一行中,則各語句之間用冒號隔開。 Else子句是可選項。若有該項,Else必須單獨占一行。 63ppt課件例3-2-2: 托運

19、行李,當行李重量不超過50公斤時,每公斤運費0.25元,超過50公斤后,超過部分按每公斤0.40元收費。輸入行李重量,計算出應付運費。64ppt課件例3-2-3 設(shè)計一個接受口令的窗體,單擊確定按鈕后,當口令輸入正確則進入一個新窗口,若口令輸入錯誤,則給出錯誤提示。無論用戶輸入什么字符,文本框中只顯示相同數(shù)量的 “ * ” 65ppt課件3.2.1 If 語句 If語句的嵌套 如果在If語句中,語句組1或語句組2本身又是一個If語句,則稱為If語句的嵌套。 66ppt課件If語句的嵌套格式: If Then ElseIf Then ElseIf Then Else End if67ppt課件此

20、語句的功能是: 如果為True,執(zhí)行,否則,如果為True,執(zhí)行,否則執(zhí)行語句組n。 例3-2-4、3-2-5 68ppt課件使用IIF函數(shù) 在程序設(shè)計中可以使用IIf函數(shù)來實現(xiàn)一些比較簡單的選擇結(jié)構(gòu)。IIf函數(shù)的語法結(jié)構(gòu)為:IIf (,)69ppt課件說明:“條件表達式”可以是關(guān)系表達式、布爾表達式或數(shù)值表達式。如果用數(shù)值表達式作條件,則非0為真,0為假。 “真部分”是當條件表達式為真時函數(shù)返回的值,“假部分”是當條件表達式為假時函數(shù)返回的值,它們可以是任何表達式。 70ppt課件 語句 y=IIf(,)相當于: If then y= Else y=P78 71ppt課件3.2.2 Sele

21、ct Case語句 在程序設(shè)計中,經(jīng)常會有多種情況的選擇。雖然可以使用If語句的嵌套形式實現(xiàn)多分支選擇,但使用多分支選擇Select Case語句,更為簡單,它根據(jù)表達式的值,來決定執(zhí)行幾組語句中的哪一組。 72ppt課件Select Case語句的語法格式為: Select Case Case Case Case Else End Select73ppt課件Select Case選擇結(jié)構(gòu)執(zhí)行的過程為:(1)計算的值(2)將的值與Case語句中的中的每一個值逐一進行比較。 如果與其中的一個值相匹配,則執(zhí)行該語句中的。 如果不止一個 Case與相匹配,則只對第一個匹配的 Case 執(zhí)行與之相關(guān)聯(lián)

22、的。 如果在表達式列表中沒有一個值與測試表達式相匹配,則 執(zhí)行 Case Else 子句最后執(zhí)行 End Select語句。74ppt課件說明: 可以是數(shù)值表達式或字符表達式,通常是一個變量。 Case子句中的的值必須與的類型相同。 75ppt課件 的表達形式由以下三種:表達式:該種表達方式通常表達一些具體的取值,例如 Case 1,3,5,7表達式 To 表達式:該種表達方式常用來表示一個數(shù)值范圍,較小的數(shù)應該放在關(guān)鍵字To的前面,例如 Case 3 To 9Is 比較運算表達式:Is關(guān)鍵字與比較運算符結(jié)合,也常用來表達一個數(shù)值范圍,例如:Case Is,=,=,=,。76ppt課件 在每個

23、Case子句中還允許使用表達式的混合形式。例如: Case 2,4,6, 8 to 10 ,Is15 若在多個Case子句有同一種取值重復出現(xiàn),則只執(zhí)行第一個出現(xiàn)此取值的Case語句后的相應語句組。 77ppt課件例 3-2-6編寫程序計算貨物運費。設(shè)貨物運費單價Y元/每噸/每公里,運輸距離為S公里。單價Y與距離S的關(guān)系為:輸入要托運的貨物重量W噸、托運的距離為S公里,計算總運費F:F=Y*W*S 78ppt課件例3-2-7給定年份和月份,判斷該年是否為閏年,并根據(jù)給定的月份判斷該月有多少天?(閏年的條件是年份能被4整除但不能被100整除,或者能被400整除。)79ppt課件3.3 循環(huán)結(jié)構(gòu)

24、循環(huán)結(jié)構(gòu)是指在執(zhí)行程序語句時,需要對其中的某些語句重復執(zhí)行多次。需重復執(zhí)行的程序段稱為“循環(huán)體”。 使用循環(huán)結(jié)構(gòu)可以簡化程序,節(jié)約內(nèi)存,提高程序執(zhí)行效率。80ppt課件3.3 循環(huán)結(jié)構(gòu)VB提供的循環(huán)結(jié)構(gòu)語句有: ForNext、 DoLoop、For Each Next、WhileWend 等。 其中最常用的是ForNext和DoLoop語句,本節(jié)主要講解這兩個循環(huán)語句的用法。81ppt課件3.3.1 For.Next語句3.3.2 Do.Loop語句3.3.3 循環(huán)嵌套3.3.4 退出控制結(jié)構(gòu)3.3 循環(huán)結(jié)構(gòu)82ppt課件 ForNext循環(huán)結(jié)構(gòu)是一種最簡單的循環(huán)結(jié)構(gòu),它屬于計數(shù)型循環(huán),通常

25、用于循環(huán)次數(shù)已知的程序結(jié)構(gòu)中。其一般格式如下:3.3.1 ForNext 語句For = TO Step Next 83ppt課件3.3.1 For.Next語句是一個數(shù)值變量,用作循環(huán)計數(shù)器,不能是數(shù)組或記錄元素。為循環(huán)變量的初始取值, 為循環(huán)變量的最后取值, 它們均可以是數(shù)值型的常量、變量或表達式,它們的值可以是整數(shù)和實數(shù)。 84ppt課件3.3.1 For.Next語句 用于決定循環(huán)變量每次增加的數(shù)值,即變量在變化時的增值,也為數(shù)值型常量、變量或表達式。步長的取值可以根據(jù)初值和終值的關(guān)系分為正數(shù)或負數(shù)兩種,若初值大于終值,則必須將步長設(shè)為負數(shù);若初值小于終值,則必須將步長設(shè)為正數(shù),才有可

26、能執(zhí)行內(nèi)部循環(huán)體。當步長為1時,可以省略Step 1。 85ppt課件3.3.1 For.Next語句 可以在循環(huán)體中的任何位置放置Exit For語句,以便隨時退出循環(huán)。(5)循環(huán)的次數(shù)有初值、終值和步長三個因素決定,計算公式為: 循環(huán)次數(shù)=Int(終值-初值)/步長 +1 ) 如:For I=1 To 10 Step 2 86ppt課件3.3.1 For.Next語句For語句的執(zhí)行過程是:首先把“初值”賦給循環(huán)變量,接著檢查循環(huán)變量是否超過終值,如果超過就停止執(zhí)行循環(huán)體,跳出循環(huán),執(zhí)行Next后面的語句;否則執(zhí)行一次循環(huán)體,然后把“循環(huán)變量+步長”的值再賦給循環(huán)變量;重復上述過程。 87

27、ppt課件循環(huán)變量賦初值循環(huán)變量終值循環(huán)體循環(huán)變量循環(huán)變量+步長Next的下一個語句NOyes例題88ppt課件例 3-3-6: 求自然數(shù)1100之間奇數(shù)之和。(自己上機調(diào)試1100自然數(shù)及偶數(shù)的和)89ppt課件例3-3-5 求n?。╪為自然數(shù)) n!=123(n-2)(n-1)n =(n-1)!n一個自然數(shù)的階乘,等于該自然數(shù)與前一個數(shù)的階乘的乘積,即從1開始連續(xù)地乘下一個自然數(shù),直到n為止。 90ppt課件例3-3-7求:直到第50項91ppt課件例3-3-8 用隨機函數(shù)產(chǎn)生10個在指定范圍內(nèi)的隨機數(shù),隨機數(shù)的范圍在文本框內(nèi)輸入。 92ppt課件3.3.1 DoLoop語句 DoLoop

28、 語句是根據(jù)條件決定循環(huán)。DoLoop 語句具有很強的靈活性:既能夠指定循環(huán)條件,也能指定循環(huán)結(jié)束條件;既可以構(gòu)成先判斷條件形式,也可以構(gòu)成后判斷條件形式。 93ppt課件 1.先判斷條件形式的DoLoop語句 語句格式為:Do While | Until 循環(huán)體Loop94ppt課件先判斷條件形式的DoLoop語句格式一: 當型循環(huán) Do While Loop 格式二: 直到型循環(huán) Do Until Loop 95ppt課件先判斷條件形式的DoLoop語句 Do While Loop 是當型循環(huán)語句,即如果為真(True)時執(zhí)行循環(huán)體,條件為假 (False)時,終止循環(huán)。 96ppt課件Do Until Loop 是直到型循環(huán)語句,為假時執(zhí)行循環(huán),直到條件為真時,終止循

溫馨提示

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

評論

0/150

提交評論