第4章 設計基礎_第1頁
第4章 設計基礎_第2頁
第4章 設計基礎_第3頁
第4章 設計基礎_第4頁
第4章 設計基礎_第5頁
已閱讀5頁,還剩68頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、V i s u a l B A S I C 程序設計基礎程序設計基礎1第第4章章 Visual Basic程序設計程序設計基礎基礎第四章第四章 Visual Basic程序設計基礎程序設計基礎2本章要點本章要點: VB代碼的書寫規(guī)則代碼的書寫規(guī)則賦值語句、注釋語句、結束語句、暫停語句賦值語句、注釋語句、結束語句、暫停語句VB數(shù)據(jù)的輸入數(shù)據(jù)的輸入/輸出方法輸出方法順序結構程序設計方法順序結構程序設計方法IF語句、語句、Select Case語句語句While/Wend、Do/Loop、For/Next語句,語句,Exit Do、Exit For語句語句分支分支/循環(huán)的嵌套循環(huán)的嵌套常見算法程序設

2、計常見算法程序設計第四章第四章 Visual Basic程序設計基礎程序設計基礎34.1 VB程序代碼的書寫規(guī)則程序代碼的書寫規(guī)則1、VB可以按照一定的格式化規(guī)則對所輸入的語可以按照一定的格式化規(guī)則對所輸入的語句進行處理。句進行處理。例如:例如:關鍵字會格式化為首字母大寫,其余字母小寫;關鍵字會格式化為首字母大寫,其余字母小寫;運算符前后自動加空格等。運算符前后自動加空格等。所以輸入關鍵字、函數(shù)名等時,可以不必區(qū)分大所以輸入關鍵字、函數(shù)名等時,可以不必區(qū)分大小寫;小寫;第四章第四章 Visual Basic程序設計基礎程序設計基礎42.語句的續(xù)行符一個語句行的最大長度為一個語句行的最大長度為1

3、023個字符;個字符;VB規(guī)定一行語句最多可寫規(guī)定一行語句最多可寫255個字符。如果超出這個字符。如果超出這個范圍,可采用多行書寫個范圍,可采用多行書寫(一個空格加一個下劃線一個空格加一個下劃線“_”)。注意:在續(xù)行符后邊不允許使用注釋,也不可將變注意:在續(xù)行符后邊不允許使用注釋,也不可將變量名、屬性名分寫到兩行。量名、屬性名分寫到兩行。3.同一行上可書寫多個語句同一行上可書寫多個語句 在一行上可以書寫多個語句,但每個語句間在一行上可以書寫多個語句,但每個語句間必須有必須有冒號冒號“:”進行分隔。進行分隔。第四章第四章 Visual Basic程序設計基礎程序設計基礎54.不同進制的數(shù)據(jù)區(qū)分不

4、同進制的數(shù)據(jù)區(qū)分 二進制前面加前綴二進制前面加前綴 “&B” 八進制前面加前綴八進制前面加前綴 “&O” 十六進制前面加前綴十六進制前面加前綴 “&H” 十進制前面不需要加前綴十進制前面不需要加前綴5.行號與標號行號與標號 VB中一般不需要加行號或標號,但是也允許中一般不需要加行號或標號,但是也允許在語句前面加行號或標號。在語句前面加行號或標號。第四章第四章 Visual Basic程序設計基礎程序設計基礎64.2 基本語句介紹基本語句介紹4.2.1 賦值語句賦值語句 4.2.2 注釋語句注釋語句4.2.3 結束語句結束語句4.2.4 暫停語句暫停語句第四章第四章 Vi

5、sual Basic程序設計基礎程序設計基礎7不同進制的數(shù)據(jù)區(qū)分 二進制前面加前綴 “&B” 八進制前面加前綴 “&O” 十六進制前面加前綴 “&H” 十進制前面不需要加前綴行號與標號 VB中一般不需要加行號或標號,但是也允許在語句前面加行號或標號。第四章第四章 Visual Basic程序設計基礎程序設計基礎84.2.1 賦值語句賦值語句【格式格式】 let 變量名變量名=表達式表達式 let 對象名對象名.屬性名屬性名=表達式表達式【功能功能】先計算先計算“=”右邊的表達式的值,然后將該值賦右邊的表達式的值,然后將該值賦給給“=”左邊的變量或?qū)傩?。左邊的變量或?qū)傩浴?/p>

6、 第四章第四章 Visual Basic程序設計基礎程序設計基礎9(1)變量在被第一次賦值之前,具有系統(tǒng))變量在被第一次賦值之前,具有系統(tǒng)默認的初始值默認的初始值,不同類型的變量,其默認的初始值不同。變量被賦值不同類型的變量,其默認的初始值不同。變量被賦值后,則變量原來的值被覆蓋掉。所以某個變量被多次后,則變量原來的值被覆蓋掉。所以某個變量被多次賦值后,只保留最后一次賦的值。賦值后,只保留最后一次賦的值。(2)如果程序中有變量強制聲明語句)如果程序中有變量強制聲明語句“Option Explicit”,而被賦值的變量未聲明,則該賦值語句被執(zhí)行時,會而被賦值的變量未聲明,則該賦值語句被執(zhí)行時,會

7、出現(xiàn)編譯錯誤出現(xiàn)編譯錯誤“變量未定義變量未定義”。(3)如果程序中沒有變量強制聲明語句)如果程序中沒有變量強制聲明語句“Option Explicit”,而被賦值的變量未聲明,則該賦值語句被,而被賦值的變量未聲明,則該賦值語句被執(zhí)行時,系統(tǒng)將創(chuàng)建該變量,并將表達式的值賦給它。執(zhí)行時,系統(tǒng)將創(chuàng)建該變量,并將表達式的值賦給它。 第四章第四章 Visual Basic程序設計基礎程序設計基礎10(4)如果為對象的屬性賦值,則對象必須存在且具有該屬)如果為對象的屬性賦值,則對象必須存在且具有該屬性。輸入語句時,只要鍵入已存在的對象名和圓點,系統(tǒng)性。輸入語句時,只要鍵入已存在的對象名和圓點,系統(tǒng)就會自動

8、顯示屬性列表供選擇,所以先建立對象,再輸入就會自動顯示屬性列表供選擇,所以先建立對象,再輸入程序,可以防止命名上的不一致或輸入錯誤。如果缺省對程序,可以防止命名上的不一致或輸入錯誤。如果缺省對象名,只給出屬性名,則默認對象是指當前窗體。象名,只給出屬性名,則默認對象是指當前窗體。(5)在實際應用中,也可以只給出對象名,不給出屬性名,)在實際應用中,也可以只給出對象名,不給出屬性名,這時將為該對象的這時將為該對象的“缺省屬性缺省屬性”賦值。賦值?!叭笔傩匀笔傩浴钡暮暮x即在語句中不給出屬性名時,默認的操作屬性。不同種義即在語句中不給出屬性名時,默認的操作屬性。不同種類的對象,其缺省屬性也不

9、同,類的對象,其缺省屬性也不同, 第四章第四章 Visual Basic程序設計基礎程序設計基礎11(6)在使用賦值語句時,要特別注意被賦值的變量(或)在使用賦值語句時,要特別注意被賦值的變量(或?qū)傩裕┡c賦值號右邊表達式的類型??梢詫⑷我忸愋偷膶傩裕┡c賦值號右邊表達式的類型??梢詫⑷我忸愋偷谋磉_式賦給表達式賦給Variant類型變量;除此以外,我們通常要類型變量;除此以外,我們通常要求二者類型一致,這樣可以使程序更加清晰規(guī)范;但在求二者類型一致,這樣可以使程序更加清晰規(guī)范;但在很多情況下,很多情況下,VB都可以自動將表達式轉(zhuǎn)換為被賦值變都可以自動將表達式轉(zhuǎn)換為被賦值變量的類型進行賦值,使用起來

10、靈活方便,但一定要搞清量的類型進行賦值,使用起來靈活方便,但一定要搞清楚常用數(shù)據(jù)類型的自動轉(zhuǎn)換規(guī)則。楚常用數(shù)據(jù)類型的自動轉(zhuǎn)換規(guī)則。 第四章第四章 Visual Basic程序設計基礎程序設計基礎12例例 交換兩個數(shù)交換兩個數(shù)重要的是學會兩個數(shù)的交換,若上述語句次序變一下,結果如重要的是學會兩個數(shù)的交換,若上述語句次序變一下,結果如何?何? t=x x=y y=t第四章第四章 Visual Basic程序設計基礎程序設計基礎13文本框中內(nèi)容的交換:文本框中內(nèi)容的交換: Dim t As String t = Text1.Text Text1.Text = Text2.Text Text2.Tex

11、t = t第四章第四章 Visual Basic程序設計基礎程序設計基礎144.2.2 注釋語句注釋語句【格式格式1】Rem 注釋內(nèi)容注釋內(nèi)容【格式格式2】注釋內(nèi)容注釋內(nèi)容注釋語句是一個非執(zhí)行語句,它的主要作用是為程序加注釋語句是一個非執(zhí)行語句,它的主要作用是為程序加上必要的注解,增加程序的可讀性。注釋內(nèi)容可以是上必要的注解,增加程序的可讀性。注釋內(nèi)容可以是任意可顯示的字符,在執(zhí)行程序時,注釋將被過濾掉。任意可顯示的字符,在執(zhí)行程序時,注釋將被過濾掉。注釋語句還有一個作用,在調(diào)試程序時,為了找出錯誤注釋語句還有一個作用,在調(diào)試程序時,為了找出錯誤的位置,可以先將部分語句加上注釋符號,暫不執(zhí)行,

12、的位置,可以先將部分語句加上注釋符號,暫不執(zhí)行,僅執(zhí)行另一部分語句。需要時,去掉注釋符號,即可僅執(zhí)行另一部分語句。需要時,去掉注釋符號,即可執(zhí)行。執(zhí)行。第四章第四章 Visual Basic程序設計基礎程序設計基礎15(1)格式)格式1中,關鍵字中,關鍵字Rem與注釋內(nèi)容之間需要有與注釋內(nèi)容之間需要有空格空格;格式格式2中,單引號中,單引號“”與注釋內(nèi)容之間則不需要空格。與注釋內(nèi)容之間則不需要空格。輸入程序時,注釋內(nèi)容被自動格式化為綠色字體。輸入程序時,注釋內(nèi)容被自動格式化為綠色字體。(2)格式)格式1必須獨立形成一個語句行,不能直接出現(xiàn)在必須獨立形成一個語句行,不能直接出現(xiàn)在其它代碼的后面;

13、若想用于其他代碼后面,必需用冒其它代碼的后面;若想用于其他代碼后面,必需用冒號號(:) 把把Rem關鍵字與代碼隔開。關鍵字與代碼隔開。 格式格式2既可以放在語句行的開始處,為一段程序做注釋,既可以放在語句行的開始處,為一段程序做注釋,也可以放在語句的后面,為一條語句做注釋。也可以放在語句的后面,為一條語句做注釋。(3)如果注釋內(nèi)容有很多行,則每行前都要有注釋符)如果注釋內(nèi)容有很多行,則每行前都要有注釋符(Rem或單引號),這叫做或單引號),這叫做“塊注釋塊注釋”。 第四章第四章 Visual Basic程序設計基礎程序設計基礎164.2.3 結束語句結束語句【格式格式】End【功能功能】可放在

14、程序中的任何位置,用來終止整可放在程序中的任何位置,用來終止整個程序的執(zhí)行,并關閉已打開的文件并清除變個程序的執(zhí)行,并關閉已打開的文件并清除變量。量。 End Sub語句用來終止一個語句用來終止一個Sub過程的執(zhí)行,對過程的執(zhí)行,對每個每個Sub過程只能有一個,過程只能有一個,End語句用來終止語句用來終止整個應用程序的執(zhí)行,必須放在過程體內(nèi),可整個應用程序的執(zhí)行,必須放在過程體內(nèi),可以有多個。以有多個。 第四章第四章 Visual Basic程序設計基礎程序設計基礎174.2.4 暫停語句暫停語句【格式格式】Stop【功能功能】在程序解釋執(zhí)行時,在程序解釋執(zhí)行時,Stop語句使程序進語句使程

15、序進入中斷模式,以便對程序進行檢查和調(diào)試。入中斷模式,以便對程序進行檢查和調(diào)試。第四章第四章 Visual Basic程序設計基礎程序設計基礎18 4.3.1 InputBox函數(shù)函數(shù)1.格式格式InputBox(prompt, title , default , xpos , ypos , helpfile, context)最常用的格式:最常用的格式: InputBoxInputBox( , , )2. 功能功能 提示一對話框,等待用戶輸入正文或按下按鈕,提示一對話框,等待用戶輸入正文或按下按鈕, 并返回所輸入的內(nèi)容。并返回所輸入的內(nèi)容。 : 字符串表達式。用于提示用戶輸入。在對話框字符串

16、表達式。用于提示用戶輸入。在對話框內(nèi)顯示時可自動換行,若想按自己要求格式換行,可插內(nèi)顯示時可自動換行,若想按自己要求格式換行,可插入回車換行符:入回車換行符:用用Chr(13)、Chr(10)、Chr(13) & Chr(10)、vbCrLf。數(shù)據(jù)輸入輸出對話框數(shù)據(jù)輸入輸出對話框InputBoxMsgBox4.3 數(shù)據(jù)的輸入與輸出數(shù)據(jù)的輸入與輸出第四章第四章 Visual Basic程序設計基礎程序設計基礎19單擊單擊“確定確定”,返回文本框中的文本到變量,返回文本框中的文本到變量R中中單擊單擊“取消取消”,返回一個零長度的字符串,返回一個零長度的字符串例例: Private Sub

17、Form_Activate() Dim R As String, AREA As Single R = InputBox(請輸入半徑請輸入半徑, 計算面積計算面積, 1) AREA = 3. 14 * Val(R) 2 Print Val(R), AREA End Sub第四章第四章 Visual Basic程序設計基礎程序設計基礎20注意事項注意事項1.執(zhí)行執(zhí)行InputBox函數(shù)后,產(chǎn)生一個對話框,提示輸函數(shù)后,產(chǎn)生一個對話框,提示輸入數(shù)據(jù),光標位于輸入框中,若入數(shù)據(jù),光標位于輸入框中,若“default”不省不省略,則輸入?yún)^(qū)顯示該值,可按確定將該值賦給一略,則輸入?yún)^(qū)顯示該值,可按確定將該

18、值賦給一個變量,也可以重新輸入。個變量,也可以重新輸入。2.默認情況下,默認情況下,InputBox函數(shù)的返回值是一個字符函數(shù)的返回值是一個字符串,故需要將其返回值作為數(shù)值參加運算時,需串,故需要將其返回值作為數(shù)值參加運算時,需事先用事先用Val函數(shù)函數(shù)(或其他轉(zhuǎn)換函數(shù))轉(zhuǎn)換為相應類(或其他轉(zhuǎn)換函數(shù))轉(zhuǎn)換為相應類型的數(shù)值,但轉(zhuǎn)換有時不準確,最好事先顯式定型的數(shù)值,但轉(zhuǎn)換有時不準確,最好事先顯式定義每個變量。義每個變量。3.InputBox函數(shù)和函數(shù)和InputBox $函數(shù)完全等價。函數(shù)完全等價。第四章第四章 Visual Basic程序設計基礎程序設計基礎214.3.2 Print方法方法

19、Print方法可以在窗體上顯示文本字符串和表達式的值,方法可以在窗體上顯示文本字符串和表達式的值,并可以在其他圖形對象和打印機上輸出信息。并可以在其他圖形對象和打印機上輸出信息。 格式格式: .Print;|,;|, : 窗體窗體 如如 Form1.Print Hello 圖片框圖片框 如如 Picture1.Print Hello 打印機打印機 如如 Printer.Print Hello 立即窗口立即窗口 如如 Debug .Print Hello 省略省略: 默認為當前窗體。默認為當前窗體。 : 多個表達式多個表達式使用逗號或分號隔開。使用逗號或分號隔開。 逗號逗號: 以以14個字符位置

20、為單位把一個輸出行分成若個字符位置為單位把一個輸出行分成若干區(qū)段。干區(qū)段。 分號分號: 后一項緊跟前一項輸出。后一項緊跟前一項輸出。第四章第四章 Visual Basic程序設計基礎程序設計基礎22 輸出時,數(shù)值型數(shù)據(jù)前有一個符號位輸出時,數(shù)值型數(shù)據(jù)前有一個符號位(正號正號不顯示不顯示),前面留一個空格位;字符串原樣輸出,前面留一個空格位;字符串原樣輸出,前后無空格。前后無空格。例例: Private Sub Form_Activate() Print 12345678901234567890 Print 2+4=; 2 + 4 Print 2-4=, 2 - 4 End Sub 第四章第四章

21、 Visual Basic程序設計基礎程序設計基礎23 例例: Private Sub Form_Activate() Print 12345678901234567890 Print 2+4=;2 + 4, Print 2-4=; Print 2 - 4 End Sub第四章第四章 Visual Basic程序設計基礎程序設計基礎24例例: Private Sub Form_Load() Form1.Show Print 12345678901234567890 Print 產(chǎn)生空行產(chǎn)生空行 Print 2+4=; 2 + 4, Print 取消上面一句末尾逗號的作用取消上面一句末尾逗號的作

22、用 Print 2-4=; Print 2 - 4 End Sub輸入輸入Print時可用時可用?代替,代替,VB將其自動轉(zhuǎn)換成將其自動轉(zhuǎn)換成Print第四章第四章 Visual Basic程序設計基礎程序設計基礎25與與Print方法有關的函數(shù)和方法方法有關的函數(shù)和方法1. Tab函數(shù)函數(shù) 格式格式: Tab(n) 功能功能: 在指定的第在指定的第n個位置上輸出數(shù)據(jù)。個位置上輸出數(shù)據(jù)。 參數(shù)參數(shù)n: n當前位置當前位置: 打印位置為下一行的第打印位置為下一行的第n列列 n輸出行寬度輸出行寬度: 打印位置為打印位置為 n Mod 行寬行寬 省略省略: 打印位置為下一個打印區(qū)的起點打印位置為下一

23、個打印區(qū)的起點 (每每14個字符個字符為一個打印區(qū)為一個打印區(qū))第四章第四章 Visual Basic程序設計基礎程序設計基礎26例例: Private Sub Form_Activate() Print 12345678901234567890 Print Hello; Tab(10); World Print Hello; Tab; World Print Hello; Tab(4); World Print Tab(-5); Hello End Sub第四章第四章 Visual Basic程序設計基礎程序設計基礎272. Spc函數(shù)函數(shù) 格式格式: Spc(n) 功能功能: 跳過跳過n個

24、空格。個空格。 例例: Print HOW; Spc(3); ABOUT 結果結果: HOWABOUT注意注意: Spc函數(shù)與函數(shù)與Space函數(shù)、函數(shù)、Tab函數(shù)的區(qū)別函數(shù)的區(qū)別3. Space$函數(shù)函數(shù) 格式格式: Space$(n) 功能功能: 返回返回n個空格。個空格。 例例: Print HOW + Space$(3)+ABOUT Print HOW & Space$(3) &ABOUT 第四章第四章 Visual Basic程序設計基礎程序設計基礎284.Cls方法方法格式:格式:對象名對象名.ClsCls方法清除由方法清除由Print方法顯示的文本或在方法顯示的文

25、本或在圖片框中顯示的圖形圖片框中顯示的圖形,并把光標移到對象并把光標移到對象的左上角的左上角(0,0)。對象:窗體、圖片框。對象:窗體、圖片框。當窗體或圖片框中使用當窗體或圖片框中使用Picture屬性裝入的圖形時,屬性裝入的圖形時,不能用不能用Cls方法清除,需用方法清除,需用LoadPicture函數(shù)。函數(shù)。第四章第四章 Visual Basic程序設計基礎程序設計基礎295.Move方法方法對象對象.Move 左邊邊距左邊邊距,上邊邊距,上邊邊距,寬度寬度,高度,高度Move方法用來移動窗體和控件,并可以方法用來移動窗體和控件,并可以改變窗體和控件的大小改變窗體和控件的大小。Privat

26、e Sub Form_Click() Move 800,800,3990,2600 Text1.Move 200,200,1500,1000 Picture1.Move 1800,200,1500,1000 Picture1.Print “Picture1”End Sub第四章第四章 Visual Basic程序設計基礎程序設計基礎304.3.3 MsgBox函數(shù)和函數(shù)和MsgBox語句語句格式格式: MsgBox( , , )功能功能: 在對話框中顯示消息,等待用戶單擊按鈕,并在對話框中顯示消息,等待用戶單擊按鈕,并返回一個整數(shù)告訴用戶單擊了哪個按鈕。返回一個整數(shù)告訴用戶單擊了哪個按鈕。 :

27、 字符串表達式。字符串表達式。 用用Chr(13)、Chr(10)、 Chr(13) & Chr(10)、vbCrLf可換行。可換行。 : 數(shù)值型數(shù)據(jù)。數(shù)值型數(shù)據(jù)。 按鈕類型按鈕類型+圖標類型圖標類型+默認按鈕。默認按鈕。第四章第四章 Visual Basic程序設計基礎程序設計基礎31MsgBox按鈕設置 第第3個按鈕為默認個按鈕為默認512vbDefaultButton3第第2個按鈕為默認個按鈕為默認 256vbDefaultButton2第第1個按鈕為默認個按鈕為默認 0vbDefaultButton1默認默認按鈕按鈕 信息圖標信息圖標 64vbInformation警告信息圖標

28、警告信息圖標 48vbExclamation詢問信息圖標詢問信息圖標 32vbQuestion關鍵信息圖標關鍵信息圖標 16vbCritical圖標圖標類型類型 重試、取消按鈕重試、取消按鈕 5vbRetryCancel是、否按鈕是、否按鈕 4vbYesNo是、否、取消按鈕是、否、取消按鈕 3vbYesNoCancel終止、重試、忽略按鈕終止、重試、忽略按鈕 2vbAboutRetryIgnore確定、取消按鈕確定、取消按鈕 1vbOkCancel確定按鈕確定按鈕 0vbOkOnly按鈕按鈕數(shù)目數(shù)目 描描 述述值值內(nèi)內(nèi) 部部 常常 數(shù)數(shù)分組分組 第四章第四章 Visual Basic程序設計基

29、礎程序設計基礎32 按鈕類型詳解按鈕類型詳解數(shù)值數(shù)值0-5,對話框內(nèi),對話框內(nèi)命令按鈕的類型和數(shù)量命令按鈕的類型和數(shù)量,共,共6種。種。數(shù)值數(shù)值16-64,指定對話框,指定對話框顯示的圖標顯示的圖標,4種,種,16-暫停,暫停,32-疑問,疑問,48-警告!,警告!,64-忽略忽略I數(shù)值數(shù)值0,256,512指定指定默認活動按鈕默認活動按鈕按鈕類型按鈕類型參數(shù)就是:每一類選一個值,加在一起就參數(shù)就是:每一類選一個值,加在一起就是參數(shù)的值是參數(shù)的值16=0+16+0,顯示確定按鈕、暫停圖標,默認是確定,顯示確定按鈕、暫停圖標,默認是確定50=2+48+0,顯示終止、重試、忽略按鈕,顯示終止、重試

30、、忽略按鈕(2)、!圖標、!圖標(48),默認是終止默認是終止第四章第四章 Visual Basic程序設計基礎程序設計基礎33chr(10),chr(13), chr(10)&chr(13)chr(10)表示換行,表示換行,chr(13)表示回車表示回車回車回車Chr(13)與)與換行換行Chr(10)的區(qū)別:)的區(qū)別:回車回車代代表上一句終了,再輸入或輸出就是下一句了。而表上一句終了,再輸入或輸出就是下一句了。而換行換行時前一句并沒有結束,前后還是一句話,僅僅是從形式上時前一句并沒有結束,前后還是一句話,僅僅是從形式上換行換行后的部分放到下一行,看起來跟回車的形式一樣。后的部分放到

31、下一行,看起來跟回車的形式一樣。 a & vbCrLf & b不同于不同于a & Chr(10) + Chr(13) & b Print 1 & vbCrLf & 2的輸出結果是(的輸出結果是( vbCrLf只是換行的只是換行的意思)意思)12Print 1 & Chr(10) + Chr(13) & 2的輸出結果是的輸出結果是12 因為先換行,再回車(其實回車包括換行,我們按鍵盤上因為先換行,再回車(其實回車包括換行,我們按鍵盤上的回車鍵的回車鍵Enter不是會換行么?),所以就等于兩行了。不是會換行么?),所以就等于兩行了。

32、第四章第四章 Visual Basic程序設計基礎程序設計基礎34MsgBox參數(shù)參數(shù) : 字符串表達式,顯示標題。字符串表達式,顯示標題。說明:說明:所有參數(shù)中只有所有參數(shù)中只有“提示信息提示信息”(第一個參數(shù))是必(第一個參數(shù))是必需的,若省略需的,若省略“按鈕類型按鈕類型”(第二個參數(shù))(第二個參數(shù)) ,則,則對話框只顯示一個對話框只顯示一個“確定確定”命令,并顯示為活動命令,并顯示為活動按鈕,若省略按鈕,若省略“對話框標題對話框標題”(第三個參數(shù))(第三個參數(shù)) ,則對話框標題為當前工程名稱,若希望不顯示,則對話框標題為當前工程名稱,若希望不顯示,則把其置為則把其置為”返回值返回值:

33、由在對話框中按下哪種按鈕決定。由在對話框中按下哪種按鈕決定。第四章第四章 Visual Basic程序設計基礎程序設計基礎35MsgBox所選按鈕返回值 內(nèi)部常數(shù)返回值被單擊的按鈕vbOk1確定vbCancel2取消vbAbort3終止vbRetry4重試vbIgnore5忽略vbYes6是vbNo7否第四章第四章 Visual Basic程序設計基礎程序設計基礎36例例: Private Sub Command1_Click() A = MsgBox(提示信息提示信息) End Sub例例: 換行換行 Private Sub Command1_Click() A=MsgBox(第一行第一行

34、& Chr(13) & 第二行第二行) End Sub第四章第四章 Visual Basic程序設計基礎程序設計基礎37例例: Private Sub Command1_Click() A = MsgBox(提示信息提示信息, , 標題內(nèi)容標題內(nèi)容) End Sub例例: 按鈕類型按鈕類型0到到5或符號常量或符號常量 Private Sub Command1_Click() A = MsgBox(提示信息提示信息, 1, 標題內(nèi)容標題內(nèi)容) End Sub第四章第四章 Visual Basic程序設計基礎程序設計基礎38例例: 圖標類型圖標類型16、32、48、64或符號常量或

35、符號常量 Private Sub Command1_Click() A = MsgBox(提示信息提示信息, 16, 標題內(nèi)容標題內(nèi)容) End Sub例例: 默認按鈕默認按鈕0,256,512 Private Sub Command1_Click() a = MsgBox(提示信息提示信息, 2 + 256, 標題內(nèi)容標題內(nèi)容) Print a End Sub按回車打印按回車打印4第四章第四章 Visual Basic程序設計基礎程序設計基礎39Msgbox語句語句Msgbox也可以寫成語句的形式也可以寫成語句的形式,但是它沒有返回值但是它沒有返回值.格式:格式:MsgBox 提示信息提示信

36、息 ,Private Sub Form_click() msg$ = 請確認此數(shù)據(jù)是否正確請確認此數(shù)據(jù)是否正確 Title$ = 數(shù)據(jù)檢查對話框數(shù)據(jù)檢查對話框 MsgBox msg$, 19, Title$End Sub這是一條獨立的語句,所以各參數(shù)與MsgBox以空格隔開,而不是放在小括號內(nèi)。各參數(shù)的含義與MsgBox函數(shù)完全一樣,只是沒有返回值。第四章第四章 Visual Basic程序設計基礎程序設計基礎404.4 順序結構程序設計順序結構程序設計順序結構是程序設計中最簡單、最常用的基順序結構是程序設計中最簡單、最常用的基本結構,是所有程序的主體結構,順序結本結構,是所有程序的主體結構,

37、順序結構程序是按照語句的書寫順序依次執(zhí)行。構程序是按照語句的書寫順序依次執(zhí)行。一般的程序設計語言中,順序結構的語句主一般的程序設計語言中,順序結構的語句主要是要是賦值語句、輸入賦值語句、輸入/輸出語句輸出語句等。在等。在VB中也有賦值語句;而輸入中也有賦值語句;而輸入/輸出可以通過輸出可以通過文本框控件、標簽控件、文本框控件、標簽控件、InputBox函數(shù)、函數(shù)、MsgBox函數(shù)或過程及函數(shù)或過程及Print方法等來實現(xiàn)。方法等來實現(xiàn)。 第四章第四章 Visual Basic程序設計基礎程序設計基礎414.5 4.5 選擇結構選擇結構 計算機要處理的問題往往是復雜多變計算機要處理的問題往往是復

38、雜多變的,僅采用順序結構是不夠的。必須利用的,僅采用順序結構是不夠的。必須利用選擇結構等來解決實際應用中的各種問題。選擇結構等來解決實際應用中的各種問題。VB中提供了多種形式的條件語句來實現(xiàn)選中提供了多種形式的條件語句來實現(xiàn)選擇結構,有擇結構,有IfIf條件語句和條件語句和SelectSelect情況語句情況語句等。它們都是對條件進行判斷,根據(jù)判斷等。它們都是對條件進行判斷,根據(jù)判斷結果,選擇執(zhí)行不同的分支。結果,選擇執(zhí)行不同的分支。 本章目錄本章目錄第四章第四章 Visual Basic程序設計基礎程序設計基礎42 1. If1. IfThenThen語句語句( (單分支結構單分支結構) )

39、 If Then 語句塊語句塊 End If 或或 If Then 例例 已知兩個數(shù)已知兩個數(shù)x和和y,比較它們的,比較它們的大小,使得大小,使得x大于大于y. If xy Then t=x x=y y=t End If 或或 If xy Then t=x: x=y: y=t重要的是學會兩個數(shù)的交換,若上述語句次序變一下,結果如何?重要的是學會兩個數(shù)的交換,若上述語句次序變一下,結果如何?If條件語句 塊結構塊結構行結構行結構第四章第四章 Visual Basic程序設計基礎程序設計基礎43注意:注意:If語句中的表達式一般為關系表達式、邏輯表達式,語句中的表達式一般為關系表達式、邏輯表達式,

40、也可以是算術表達式。表達式值按非零為也可以是算術表達式。表達式值按非零為True,零為零為False判斷。判斷。語句塊中的語句可以是一條或多條語句。若是用行結語句塊中的語句可以是一條或多條語句。若是用行結構的形式,則多條語句必須寫在同一行上,且語構的形式,則多條語句必須寫在同一行上,且語句之間用冒號隔開。句之間用冒號隔開。一般來說,一般來說,只有一條語句時用行結構,多條語句時用只有一條語句時用行結構,多條語句時用塊結構。塊結構。塊結構與行結構的區(qū)別:塊結構與行結構的區(qū)別:看看Then后面的語句是否在同后面的語句是否在同一行上,若在同一行就是單行結構,否則為塊結一行上,若在同一行就是單行結構,否

41、則為塊結構,構,塊結構必須以塊結構必須以End if結束結束。第四章第四章 Visual Basic程序設計基礎程序設計基礎442. If2. IfThenThenElseElse語句語句( (雙分支結構雙分支結構) ) If Then Else End If If Then Else 例例 計算分段函數(shù):計算分段函數(shù):yxxxxxxxsincos231030單分支結構實現(xiàn): y=cos(x)x3+3*x If x0 Then y=sin(x)+sqr (x*x+1) 雙分支結構實現(xiàn): If x0 Then y=sin(x)+sqr (x*x+1) Else y=cos(x)x3+3*x En

42、d If第四章第四章 Visual Basic程序設計基礎程序設計基礎453. If3. IfThenThenElseIfElseIf語句語句( (多分支結構多分支結構) ) 形式:形式: If Then ElseIf Then ElseIf Then Else 語句塊語句塊 n+1 End If注意注意:1) 此處此處Else和和If之間不能有空格,否則程序出錯。之間不能有空格,否則程序出錯。2)“表達式表達式1-n”都是邏輯表達式。都是邏輯表達式。3)不管有幾個分支不管有幾個分支,程序執(zhí)行了滿足條件的一個分支后程序執(zhí)行了滿足條件的一個分支后,其余分支不再執(zhí)行。其余分支不再執(zhí)行。 4) 一個

43、多分支結構中只有一個一個多分支結構中只有一個End If語句。語句。 5)當多分支中有多個表達式同時滿足時,只執(zhí)行第一個與之匹配的語句塊。注當多分支中有多個表達式同時滿足時,只執(zhí)行第一個與之匹配的語句塊。注意多分支中表達式的書寫順序。意多分支中表達式的書寫順序。6) 塊結構的條件語句可以嵌套塊結構的條件語句可以嵌套 。第四章第四章 Visual Basic程序設計基礎程序設計基礎46例例 已知變量已知變量strC中存放了一個字符,判斷該字符是字母字符、數(shù)字字中存放了一個字符,判斷該字符是字母字符、數(shù)字字符還是其他字符。符還是其他字符。用多分支結構實現(xiàn)用多分支結構實現(xiàn): strc=InputBo

44、x(input) If Ucase(strC) =A And Ucase (strC) =0 And strC =9 Then Print strC + 是數(shù)字字符是數(shù)字字符 Else Print strC + 其他字符其他字符 End If 不管有幾個分支,依次判斷,當某條件滿足,執(zhí)行相應的語句,其不管有幾個分支,依次判斷,當某條件滿足,執(zhí)行相應的語句,其余分支不再執(zhí)行;若條件都不滿足,且有余分支不再執(zhí)行;若條件都不滿足,且有Else子句,則執(zhí)行該語句塊,子句,則執(zhí)行該語句塊,否則什么也不執(zhí)行。否則什么也不執(zhí)行。ElseIf不能寫成不能寫成 Else If。第四章第四章 Visual Bas

45、ic程序設計基礎程序設計基礎47例例 已知百分制成績已知百分制成績mark,顯示對應的五級制成績,顯示對應的五級制成績 哪些正確,哪些錯誤?哪些正確,哪些錯誤?第四章第四章 Visual Basic程序設計基礎程序設計基礎484 4IfIf語句的嵌套語句的嵌套 If語句的嵌套是指語句的嵌套是指If或或Else后面的語句塊中又包含后面的語句塊中又包含If語句。語句。 形式如下:形式如下: If Then If Then End If End If T x yT z 為最小數(shù)T 使得 x yFFF x yzx y x 與 y 交換y z y 與 z 交換xyz用一個用一個IF語句和一個嵌套的語句和

46、一個嵌套的IF語句實現(xiàn)語句實現(xiàn) If xy Then t=x: x=y: y=t If yz Then t=y: y=z: z=t If xy Then t=x: x=y: y=t End If End IfIf語句的嵌套注意事項:書寫鋸齒型;語句的嵌套注意事項:書寫鋸齒型; If 與與End If配對。配對。第四章第四章 Visual Basic程序設計基礎程序設計基礎49:與:與同類型的下面四種形式之一:同類型的下面四種形式之一: (1) 表達式表達式 例例: A (2)一組枚舉表達式一組枚舉表達式(用逗號分隔用逗號分隔) 2,4,6,8 (3) 表達式表達式1 To 表達式表達式2 60

47、 To 100 (4) Is 關系運算符表達式關系運算符表達式 Is =A And Ucase (strC) =0 And strC 0 And y 0 ThenIf x 0 And y 0 Then Print Print 在第一象限在第一象限 ElseIf x 0 ThenElseIf x 0 Then Print Print 在第二象限在第二象限 ElseIf x 0 And y 0 ThenElseIf x 0 And y 0 And y 0 And y 0 And y 0 x 0 And y 0Print Print 在第一象限在第一象限 Case x 0 Case x 0Print

48、 Print 在第二象限在第二象限 Case x 0 And y 0 Case x 0 And y 0 And y 0 And y y,x,y) 第四章第四章 Visual Basic程序設計基礎程序設計基礎4.6.1whilewend循環(huán)語句只要給定的條件表達式的值為真,程序就重復執(zhí)行whilewend 之間的語句。4.6 循循 環(huán)環(huán) 結結 構構條件表達式語句塊FalseTrue圖5-16 WhileWend語句流程圖 第四章第四章 Visual Basic程序設計基礎程序設計基礎55例 求1+2+3+100的值。源程序代碼:源程序代碼:Private Sub Form_click()Dim

49、 s As long, i As Integers = 0i = 1While i=100 s=s+i i=i+1WendPrint “1+2+3+100=; sEnd Sub第四章第四章 Visual Basic程序設計基礎程序設計基礎56Private Sub Form_click()Dim n As IntegerDim x As Doublex = 13: n = 0While x 0 Print (n Mod 10); n = n 10WendEnd Sub例: 編寫一程序,將一正整數(shù)按逆序形式輸出.第四章第四章 Visual Basic程序設計基礎程序設計基礎584.6.2 DoL

50、oop循環(huán)語句循環(huán)語句(用于控制循環(huán)次數(shù)未知)【格式格式1】Do While 條件條件 語句組語句組1 Eixt Do 語句組語句組2 Loop 條件表達式 F T F T Exit Do 語句塊 語句塊 Exit Do 語句塊 語句塊 條件表達式 圖 Do Loop While 圖 Do WhileLoop 【格式格式2】Do 語句組語句組1 Eixt Do 語句組語句組2 Loop While 條件條件第四章第四章 Visual Basic程序設計基礎程序設計基礎59例例 輸入一組學生的成績,輸出成績總和,當輸入一個負數(shù)輸入一組學生的成績,輸出成績總和,當輸入一個負數(shù)時,結束程序的執(zhí)行。時

51、,結束程序的執(zhí)行。Private Sub Form_Click() Dim score As Integer, total As Long total = 0 Do While True score = Val(InputBox(請輸入一個成績(請輸入一個成績(0-100):):) If score = 0 total = total + score score = Val(InputBox(請輸入一個成績(請輸入一個成績(0-100):):) Loop Print 總分為:總分為: & totalEnd Sub第四章第四章 Visual Basic程序設計基礎程序設計基礎60【格式格

52、式3】Do Until 條件條件 語句組語句組1 Eixt Do 語句組語句組2 Loop【格式格式4】Do 語句組語句組1 Eixt Do 語句組語句組2 Loop Until 條件條件第四章第四章 Visual Basic程序設計基礎程序設計基礎61例例 我國有我國有1313億人口,按人口年增長億人口,按人口年增長0.8%0.8%計算,多少年計算,多少年后我國人口超過后我國人口超過2626億。億。分 析 : 解 此 問 題 兩 種 方 法 , 可 根 據(jù) 公 式 :分 析 : 解 此 問 題 兩 種 方 法 , 可 根 據(jù) 公 式 :26=13*(1+0.008)n 直接利用標準對數(shù)函數(shù)求

53、得;也可利用循環(huán)求得,程序如下:直接利用標準對數(shù)函數(shù)求得;也可利用循環(huán)求得,程序如下:Private Sub Command1_Click() x = 13 n = 0 Do until x = 26 x = x * 1.008 n = n + 1 Loop Print n, xEnd SubDo While x 26第四章第四章 Visual Basic程序設計基礎程序設計基礎624.6.3 For循環(huán)語句循環(huán)語句 (用于循環(huán)次數(shù)已知) 1.語句形式 For 循環(huán)變量初值循環(huán)變量初值 to 終值終值 Step 步長步長 語句塊語句塊Exit For 語句塊語句塊 Next 循環(huán)變量循環(huán)變量

54、循環(huán)變量 0 初值初值終值終值 =1 時時,可省略可省略終值終值=0 死循環(huán)死循環(huán)(3)循環(huán)次數(shù)循環(huán)次數(shù)) 1(步長初值終值Int(2)步長步長其中:其中:(1)循環(huán)變量必須為數(shù)值型。循環(huán)變量必須為數(shù)值型。2.執(zhí)行流程第四章第四章 Visual Basic程序設計基礎程序設計基礎63例例 計算計算1100的奇數(shù)和,程序段如下:的奇數(shù)和,程序段如下:Dim i %, s% s=0 For i = 1 To 100 step 2 s = s + i Next i Print s第四章第四章 Visual Basic程序設計基礎程序設計基礎64例例 求求n!,!,n的值由用戶輸入的值由用戶輸入Pri

55、vate Sub Form_Click()Dim fact As Long, i As Integer, n As Integern = Val(InputBox(“請輸入請輸入n的值:的值:”)fact = 1For i = 1 To n fact = fact * iNextPrint n & 的階乘為:的階乘為: & factEnd Sub第四章第四章 Visual Basic程序設計基礎程序設計基礎65例例 輸入一個正整數(shù)輸入一個正整數(shù)n=3,判斷是否為素數(shù),判斷是否為素數(shù)Private Sub Form_Click () Dim n As Long, i As Int

56、eger n = Val(InputBox(請輸入一個正請輸入一個正整數(shù)(大于等于整數(shù)(大于等于3):):) For i = 2 To n - 1 If n Mod i = 0 Then Exit For End If Next If i n - 1 Then Print n & 是素數(shù)是素數(shù) Else Print n & 不是素數(shù)不是素數(shù) End IfEnd SubPrivate Sub Form_Click() Dim n As Long, i As Integer, f As Boolean n = Val(InputBox(請輸入一個正請輸入一個正整數(shù)(大于等于整數(shù)(大

57、于等于3):):) f = True For i = 2 To n - 1 If n Mod i = 0 Then f = False End If Next If f Then Print n & 是素數(shù)是素數(shù) Else Print n & 不是素數(shù)不是素數(shù) End IfEnd Sub第四章第四章 Visual Basic程序設計基礎程序設計基礎663.注意的問題注意的問題 (1) 出了循環(huán),循環(huán)控制變量值的問題。出了循環(huán),循環(huán)控制變量值的問題。 例程序段:例程序段: For i=2 To 13 Step 3 Print i , Next i Print : Print “i

58、=“, i4) 1(3213Int循環(huán)執(zhí)行次數(shù)循環(huán)執(zhí)行次數(shù)輸出輸出 i的值分別為的值分別為: 2 5 8 11出了循環(huán)輸出為出了循環(huán)輸出為: i=14第四章第四章 Visual Basic程序設計基礎程序設計基礎67例例 改變改變循環(huán)控制變量對循環(huán)的影響。循環(huán)控制變量對循環(huán)的影響。Private Sub Command1_Click() j = 0 For i = 1 To 20 Step 2 i = i + 3 j = j + 1 Print 第第; j; 次循環(huán)次循環(huán)i=; i Next i Print 退出循環(huán)后退出循環(huán)后i=; i End Sub正常情況:正常情況:i=1,3,5,7,9,11,13,15,17,19現(xiàn)在:現(xiàn)在:i=4,9,14,19(2)在循環(huán)體內(nèi)對循環(huán)控制變量可多次引用;但最好不要)在循環(huán)體內(nèi)對循環(huán)控制變量可多次引用;但最好不要對其賦值,否則影響原來的循環(huán)控制規(guī)律。對其賦值,否則影響原來的循環(huán)控制規(guī)律。第四章第四章 Visual Basic程序設計基礎程序設計基礎68計算下列循環(huán)語句的次數(shù):(1)For i=-3 To 20 step 4 (2)For i=-3.5 To 5.5 step 0.5(3)For i=-3.5 To 5.5 step -0.5 (4)For

溫馨提示

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

評論

0/150

提交評論