林卓然VB教程程序設(shè)計(jì)基礎(chǔ)PPT課件_第1頁(yè)
林卓然VB教程程序設(shè)計(jì)基礎(chǔ)PPT課件_第2頁(yè)
林卓然VB教程程序設(shè)計(jì)基礎(chǔ)PPT課件_第3頁(yè)
林卓然VB教程程序設(shè)計(jì)基礎(chǔ)PPT課件_第4頁(yè)
林卓然VB教程程序設(shè)計(jì)基礎(chǔ)PPT課件_第5頁(yè)
已閱讀5頁(yè),還剩20頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、2021-11-21 2.1 2.1 數(shù)據(jù)類(lèi)型數(shù)據(jù)類(lèi)型 在使用計(jì)算機(jī)來(lái)處理數(shù)據(jù)時(shí),會(huì)遇到各種不同類(lèi)型的數(shù)據(jù)。例如,一個(gè)人的姓名是由一串文本( (字符) )組成,成績(jī)、年齡和體重都是一個(gè)數(shù)值,而是否大學(xué)畢業(yè)則是一個(gè)邏輯值,等等。 為了更好地處理各種各樣的數(shù)據(jù),VBVB定義了多種數(shù)據(jù)類(lèi)型 數(shù)值型 數(shù)據(jù)類(lèi)型 字符型 邏輯型 日期型 對(duì)象型 變體型整數(shù): 整型/長(zhǎng)整型字節(jié)型浮點(diǎn)型: 單/雙精度貨幣型第1頁(yè)/共25頁(yè)2021-11-22 數(shù)值型數(shù)據(jù)數(shù)值型數(shù)據(jù) (1) (1) 整型(Integer)(Integer)和長(zhǎng)整型(Long)(Long) 不帶小數(shù)部分的數(shù),表示正整數(shù)、負(fù)整數(shù)和零 整型數(shù): :

2、-32768-327683276732767 長(zhǎng)整型數(shù):-2147483648-214748364821474836472147483647 (2) (2) 字節(jié)型(Byte)(Byte) 字節(jié)型數(shù)可以表示無(wú)符號(hào)的整數(shù) 0 0255255(3) (3) 單精度型(Single)(Single)和雙精度型(Double)(Double) 浮點(diǎn)數(shù)。表示帶有小數(shù)部分的數(shù) 表示數(shù)的范圍大,但有誤差。 如超出某個(gè)表示范圍,則用科學(xué)記數(shù)法 例如:4.53E8(4.534.53E8(4.5310108 8) ),8.173E-148.173E-14,3.14D233.14D23(4) (4) 貨幣型(Cur

3、rency)(Currency) 專(zhuān)門(mén)為處理貨幣而設(shè)計(jì)的數(shù)據(jù)類(lèi)型 它可最多保留小數(shù)點(diǎn)右邊4 4位和小數(shù)點(diǎn)左邊1515位第2頁(yè)/共25頁(yè)2021-11-23其他類(lèi)型數(shù)據(jù)其他類(lèi)型數(shù)據(jù) (1) 字符型是用雙引號(hào)括起來(lái)的一串字符。 例如: “Canton”、”1+2=?”、”GoodMorning”等 ,其中 “ ”稱(chēng)為起止界限符。 字符串長(zhǎng)度分為: : 變長(zhǎng)字符串( (長(zhǎng)度不固定) ) 定長(zhǎng)字符串( (長(zhǎng)度固定) ) 例如: Dim a As String a是不定長(zhǎng)字符串 Dim b As String*4 b是定長(zhǎng)字符串(4個(gè)字符) a = “VB” a的值為2個(gè)字符“VB” a = “Visu

4、al Basic” a的值為12個(gè)字符“Visual Basic” b = “VB ” b的值為4個(gè)字符“VB ” (后面有2個(gè)空格) b = “Visual Basic” b的值為4個(gè)字符“Visu” 第3頁(yè)/共25頁(yè)2021-11-24其他類(lèi)型數(shù)據(jù)其他類(lèi)型數(shù)據(jù) (2) 邏輯型數(shù)據(jù)只有True(真)和False(假)兩個(gè)值 (3)日期型數(shù)據(jù)用兩個(gè)“#”符號(hào)把日期和時(shí)間的值括起來(lái) 如:#08/20/2001#、#2001-08-20# (4) 變體型(Variant)數(shù)據(jù)是一種可變的數(shù)據(jù)類(lèi)型,可以存放任何類(lèi)型的數(shù)據(jù),VB會(huì)自動(dòng)完成必要的轉(zhuǎn)換 不特別說(shuō)明時(shí),VB會(huì)自動(dòng)將該變量默認(rèn)為Variant

5、型變量 例: Temp=“22” 字符串 Temp=Temp-1 數(shù)值 Temp=#01/01/2002# 日期第4頁(yè)/共25頁(yè)2021-11-25 2.2 2.2 常量與變量常量與變量 2.2.1 2.2.1 常量常量 在程序運(yùn)行期間其值始終保持不變的量 直接常量:在程序代碼中直接給出的數(shù)據(jù)。 例 如 : 1 2 3 , - 2 6 3 , ” V i s u a l Basic” , ”12.57”等 符號(hào)常量:在程序中用符號(hào)表示的常量。 格式: PublicPrivate Const 常量名 As 數(shù)據(jù)類(lèi)型=表達(dá)式 例如: Const PI As Single =3.14159第5頁(yè)/共

6、25頁(yè)2021-11-26 2.2.2 2.2.2 變量 變量是在程序運(yùn)行期間其值可以發(fā)生變化的量 1. 變量的命名規(guī)則 應(yīng)遵守一些規(guī)則 2. 變量的聲明 (1) 聲明變量(顯式聲明) 用Dim、Public、Private或Static語(yǔ)句來(lái)聲明變量 例如:Dim sum As Integer 把sum定義為整型變量 sum = 3 (2)隱式聲明 不加說(shuō)明就直接使用變量,此時(shí)默認(rèn)的變量類(lèi)型為變體型 例如: sum = 3第6頁(yè)/共25頁(yè)2021-11-27 (1) “值可變”:當(dāng)將某個(gè)數(shù)據(jù)存放到一個(gè)變量時(shí),就把變量中原有的值“沖”掉,換成新的值。 例如,以下2個(gè)賦值語(yǔ)句: a = 3 a

7、= 8 同一變量在不同時(shí)刻可以取不同的值 (2)“取之不盡”:在運(yùn)算過(guò)程中,如果沒(méi)有改變?cè)撟兞康闹?,那么,不管使用變量的值進(jìn)行多少次運(yùn)算,其值始終保持不變。 例如 x = 5 a = 3 + x x的值始終保持為5 b = x*x 4*x 3. 3.變量的兩個(gè)重要特點(diǎn)第7頁(yè)/共25頁(yè)2021-11-28 五類(lèi)表達(dá)式:算術(shù)表達(dá)式、字符串表達(dá)式、日期表達(dá)式、關(guān)系表達(dá)式和邏輯表達(dá)式 1. 算術(shù)表達(dá)式: 運(yùn)算符及其優(yōu)先級(jí): (乘方) -(求負(fù)) */ Mod +- 示例:9 / 5=1.8, 9 5=1, 9 mod 5=1 2. 字符串表達(dá)式:運(yùn)算符有兩個(gè):&和+ ”計(jì)算機(jī)” & ”

8、網(wǎng)絡(luò)” 結(jié)果為 ”計(jì)算機(jī)網(wǎng)絡(luò)” 3. 日期表達(dá)式: #8/8/2001# - #6/3/2001# 結(jié)果為 66 #12/1/2000# - 32 結(jié)果為 #10/30/2000# 2.3 2.3 表達(dá)式表達(dá)式結(jié)果?第8頁(yè)/共25頁(yè)2021-11-29 1 + 2 * 14 Mod 17 6 / 2 = ? 求出下列表達(dá)式的值想一想 1. 按運(yùn)算符的優(yōu)先級(jí)分成若干運(yùn)算步驟 先乘除,再整除 和求Mod,后加運(yùn)算 2. 根據(jù)運(yùn)算符的運(yùn)算功能求出各步驟的結(jié)果思考題 1 + 28 Mod 5 結(jié)果為 4第9頁(yè)/共25頁(yè)2021-11-210 內(nèi)部函數(shù)是由VB系統(tǒng)提供 函數(shù)調(diào)用的一般格式為: 函數(shù)名(參

9、數(shù)1,參數(shù)2,) 返回函數(shù)值 例如: y=Sqr(x) Sqr是內(nèi)部函數(shù)名,x為參數(shù),運(yùn)行時(shí)該語(yǔ)句調(diào)用內(nèi)部函數(shù)Sqr來(lái)求x的平方根,其計(jì)算結(jié)果由系統(tǒng)返回給變量y VB的內(nèi)部函數(shù)大體上分為四大類(lèi):數(shù)學(xué)函數(shù),字符串函數(shù),日期與時(shí)間函數(shù)和轉(zhuǎn)換函數(shù)。2.4 2.4 常用內(nèi)部函數(shù)常用內(nèi)部函數(shù)第10頁(yè)/共25頁(yè)2021-11-211 說(shuō)明: 函數(shù)Int(x)是求小于或等于x的最大整數(shù)。 例如 Int(2)=2, Int(-2.5)=-3, Int(-3)=-3 利用Int函數(shù)可以對(duì)數(shù)據(jù)進(jìn)行四舍五入。例如,對(duì)一個(gè)正數(shù)x舍去小數(shù)位時(shí)進(jìn)行四舍五入,可采用如下式子: Int(x+0.5) 當(dāng)x=9.4時(shí),Int(

10、9.4 + 0.5)=9 當(dāng)x=9.5時(shí),Int(9.5 + 0.5)=102.4.1 2.4.1 數(shù)學(xué)函數(shù) 第11頁(yè)/共25頁(yè)2021-11-212 隨機(jī)函數(shù)Rnd可以模擬自然界中各種隨機(jī)現(xiàn)象。它可產(chǎn)生一個(gè)(0,1)的隨機(jī)數(shù)。在VB中,有一個(gè)稱(chēng)為隨機(jī)數(shù)生成器的隨機(jī)數(shù)生成程序,能產(chǎn)生一個(gè)隨機(jī)數(shù)序列,用戶每次調(diào)用Rnd即可得到這個(gè)隨機(jī)數(shù)序列中的一個(gè)。 使用Randomize語(yǔ)句可以為隨機(jī)數(shù)生成器指定不同的初值或者稱(chēng)為隨機(jī)數(shù)序列的“種子”,這樣可以得到不同的隨機(jī)數(shù)序列。 Rnd通常與Int函數(shù)配合使用 生成a, b區(qū)間范圍內(nèi)的隨機(jī)整數(shù),可以采用 Int(b-a+1)*Rnd + a) 例如 Int

11、(4*Rnd+1)可以產(chǎn)生14之間(含1和4)的隨機(jī)整數(shù)??梢允?,2,3或4,這由VB運(yùn)行時(shí)隨機(jī)給定。第12頁(yè)/共25頁(yè)2021-11-213 編寫(xiě)的窗體單擊事件過(guò)程代碼如下: Private Sub Form_Click()Private Sub Form_Click() Dim a As Single, b As Single, c As Single Dim a As Single, b As Single, c As Single a = 6 a = 6 b = 9 b = 9 c = Sqr(a c = Sqr(a * * a + b a + b * * b) b) Print c

12、 = ; c Print c = ; c End Sub End Sub 運(yùn)行程序后單擊窗體,輸出結(jié)果是: c=10.81665例2.1 已知a=6,b=9,計(jì)算c = 例2.122ba 第13頁(yè)/共25頁(yè)2021-11-214編寫(xiě)的窗體單擊事件過(guò)程代碼如下: Private Sub Form_Click() Dim a As Integer, b As Integer, c As Integer Randomize 初始化隨機(jī)數(shù)生成器 a = Int(90 * Rnd + 10) 產(chǎn)生10,99區(qū)間內(nèi)的隨機(jī)整數(shù) b = Int(90 * Rnd + 10) c = a + b 求兩數(shù)之和 P

13、rint 產(chǎn)生的兩個(gè)隨機(jī)數(shù): ; a, b Print 和數(shù): ; c End Sub運(yùn)行程序后單擊窗體,輸出結(jié)果是: 產(chǎn)生的兩個(gè)隨機(jī)數(shù):56 71 和數(shù):127例2.2 通過(guò)隨機(jī)函數(shù)產(chǎn)生2個(gè)兩位正整數(shù),求這2個(gè)數(shù) 之和并顯示出來(lái) 再次運(yùn)行程序,單擊窗體后輸出另一組結(jié)果是: 產(chǎn)生的兩個(gè)隨機(jī)數(shù):18 37 和數(shù):55例2.2第14頁(yè)/共25頁(yè)2021-11-215 用于進(jìn)行字符串處理 說(shuō)明:(1) 函數(shù)Mid(字符串,p,n) 從第P個(gè)開(kāi)始取n個(gè)字符 示例:Mid(“ABCDEG”,3,2) 的結(jié)果為 ”CD” 若省略n,則得到的是從P開(kāi)始的往后所有字符,如 Mid(“ABCDE”,2) 的結(jié)果

14、為 “BCDE” (2) (2) 函數(shù)Instr(f,Instr(f,串1,1,串2,k)2,k) 查找串2在串1中的位置 f f 和 k k 均為可選參數(shù),f f表示開(kāi)始搜索的位置( (默認(rèn)值為1)1),k k表示比較方式,若k k為0(0(默認(rèn)) ),表示區(qū)分大小寫(xiě);若k k為1 1,則不分大小寫(xiě)。 例如 Instr(3, Instr(3, ”A12a34A56A12a34A56”, ”A A”) ) 的結(jié)果為 7 7 Instr(3, Instr(3, ”A12a34A56A12a34A56”, , ”A A”, 1), 1) 的結(jié)果為 4 4 Instr(Instr(”A12a34A5

15、6A12a34A56”, ”A A”) ) 的結(jié)果為 1 1 (3) (3)函數(shù)LeftLeft(字符串,n) 取左邊n個(gè)字符 示例: : Left(Left(”ABCDEABCDE” ,2)2) 的結(jié)果為 ”ABAB”2.4.22.4.2字符串函數(shù)字符串函數(shù)第15頁(yè)/共25頁(yè)2021-11-216 先從字符串a(chǎn)中找出某個(gè)指定字符(本例為空格),再以此字符為界拆分成兩個(gè)字符串。編寫(xiě)的窗體單擊過(guò)程代碼如下: Private Sub Form_Click() Dim a As String, b As String, c As String, n As Integer a = VisualBasi

16、c 表示空格 n = InStr(a, ) 查找空格位置 b = Left(a, n - 1) 取左邊部分 c = Mid(a, n + 1) 取右邊部分 Print b 顯示左邊部分 Print c 顯示右邊部分 End Sub 程序運(yùn)行后單擊窗體,輸出結(jié)果是: Visual Basic例例2.32.3 使用字符串函數(shù)示例使用字符串函數(shù)示例例2.3 處理方法 VisualBasic 先查找 空格位置取右邊部分取左邊部分第16頁(yè)/共25頁(yè)2021-11-217 Private Sub Form_Click() Dim a As String, b As String, c As String,

17、 n As Integer a = “VisualBasic” 表示空格 n = InStr(a, “”) 查找空格位置 b = Left(a, n - 1) 取左邊部分 c = Right( a, _ ) 取右邊部分 Print b 顯示左邊部分 Print c 顯示右邊部分 End Sub 程序運(yùn)行后單擊窗體,輸出結(jié)果是: Visual Basic 若用 RightRight函數(shù)來(lái)代替 MidMid函數(shù), 應(yīng)如何改動(dòng)?想一想思考題A. n B. Len(a)-n C. Len(a)B第17頁(yè)/共25頁(yè)2021-11-218 日期/時(shí)間函數(shù)用于進(jìn)行日期和時(shí)間處理 例如: 函數(shù)Date返回系統(tǒng)

18、日期,如返回日期為 #11/03/2001# 函數(shù)Time返回系統(tǒng)時(shí)間,如返回時(shí)間為 #7:03:28#2.4.3 2.4.3 日期與時(shí)間函數(shù)日期與時(shí)間函數(shù)第18頁(yè)/共25頁(yè)2021-11-219 轉(zhuǎn)換函數(shù)val() Val(A12) 的值為 0 Val(12A12) 的值為 12 Val(1.2e2) 的值為 120 Val (“12+3) =12, Val (“-12+3)= -12 Val(“+a+12)=0, Val (“+12+5)=12 Val()函數(shù)的實(shí)現(xiàn)原理是這樣的: 從字符串中第一個(gè)字符開(kāi)始檢索,如果字符屬于“0”到“9”之間的字符,那么就把它轉(zhuǎn)換為數(shù)字,一旦遇到不屬于“0”

19、到“9”之間的字符的時(shí)候轉(zhuǎn)換就停止。 但有一個(gè)例外,就是第一個(gè)字符是正負(fù)號(hào)的時(shí)候,若符號(hào)后面緊跟著是數(shù)字,則轉(zhuǎn)為數(shù)字,若為非數(shù)字字符,則結(jié)果為0 2.4.4 2.4.4 類(lèi)型轉(zhuǎn)換函數(shù)第19頁(yè)/共25頁(yè)2021-11-2202.5程序代碼編寫(xiě)規(guī)則 2.5.1語(yǔ)句及語(yǔ)法 本書(shū)關(guān)于VB語(yǔ)句的說(shuō)明在38頁(yè)上方第20頁(yè)/共25頁(yè)2021-11-221 在編寫(xiě)程序代碼時(shí),要遵守一定的規(guī)則。不能超越其規(guī)定來(lái)自由發(fā)揮。 (1) 一行寫(xiě)多條語(yǔ)句。冒號(hào)分隔 Sum=Sum+x : Count=Count+1 (2) 一條語(yǔ)句寫(xiě)成多行 使用續(xù)行符(一個(gè)空格后面跟隨一個(gè)下劃線“_”),將長(zhǎng)語(yǔ)句分成多行。例如: Print Text1.Text & Text2.Text & Text4.Text _ & Left(Text3.Text,3) (3)不區(qū)分大小寫(xiě)字母 VB不區(qū)分應(yīng)用程序

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論