![《Visual Basic程序設計簡明教程》課件第6章_第1頁](http://file4.renrendoc.com/view10/M01/29/11/wKhkGWV5qWmAMfhdAAElPjh6sdo313.jpg)
![《Visual Basic程序設計簡明教程》課件第6章_第2頁](http://file4.renrendoc.com/view10/M01/29/11/wKhkGWV5qWmAMfhdAAElPjh6sdo3132.jpg)
![《Visual Basic程序設計簡明教程》課件第6章_第3頁](http://file4.renrendoc.com/view10/M01/29/11/wKhkGWV5qWmAMfhdAAElPjh6sdo3133.jpg)
![《Visual Basic程序設計簡明教程》課件第6章_第4頁](http://file4.renrendoc.com/view10/M01/29/11/wKhkGWV5qWmAMfhdAAElPjh6sdo3134.jpg)
![《Visual Basic程序設計簡明教程》課件第6章_第5頁](http://file4.renrendoc.com/view10/M01/29/11/wKhkGWV5qWmAMfhdAAElPjh6sdo3135.jpg)
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
2023/12/13《VisualBasic程序設計簡明教程》16.1一維數組一維數組的定義方式:
Dim數組名([下界To]上界)As類型例如:
Dima(1To5)AsInteger
數組的元素在內存中按順序存放,數組所占據的字節(jié)數是各元素所占字節(jié)數之和。
2023/12/13《VisualBasic程序設計簡明教程》2說明:(1)數組名應該是一個合法的標識符,數組中所有元素的數據類型都相同。(2)下界和上界均為整型常量表達式,它們規(guī)定了元素下標的取值范圍。下界最小可以是-32768,上界最大可以是32767。應該滿足下界≤上界,一維數組的長度即元素的個數為上界-下界+1。(3)對于沒有賦初值的數組元素,如果是數值型,系統(tǒng)都自動賦以0;如果是字符型,系統(tǒng)都自動賦以空串;如果是邏輯型,系統(tǒng)都自動賦以False。(4)如果定義數組時省略了下界,則下界默認是0。2023/12/13《VisualBasic程序設計簡明教程》3數組元素的引用元素引用的形式是:數組名(下標)例如:
a(4)=a(1)*a(3)+a(2)在引用數組的元素時,應注意下標值不要超過數組的范圍。2023/12/13《VisualBasic程序設計簡明教程》4例6.1計算全班學生的VB平均成績ConstNAsInteger=30PrivateSubCommand1_Click()Dima(1ToN)AsInteger,iAsInteger,sumAsInteger,aver!Fori=1ToN'輸入學生成績
a(i)=Val(InputBox("請輸入第"&i&"位學生的成績"))Nextisum=0Fori=1ToN'累加學生成績
sum=sum+a(i)Nextiaver=sum/N'計算平均成績
Picture1.Print"平均成績是";averEndSub2023/12/13《VisualBasic程序設計簡明教程》5ConstNAsInteger=30PrivateSubCommand2_Click()Dima(1ToN)AsString,i%,j%,flagAsBoolean,name$Fori=1ToN'輸入學生姓名
a(i)=InputBox("請輸入第"&i&"位學生的姓名")NextiDoname=InputBox("請輸入要查詢的學生姓名")flag=FalseFori=1ToNIfa(i)=nameThenflag=True'找到,改變標志
ExitForEndIfNextiIfflag=TrueThenPicture1.Print"找到姓名為";name;"的學生"ElsePicture1.Print"沒有找到姓名為";name;"的學生"EndIfj=MsgBox("還要繼續(xù)查詢嗎?",vbYesNo+vbquestin)LoopWhilej=6'如果按下“是”按鈕,則繼續(xù)循環(huán)
EndSub例6.2查詢學生2023/12/13《VisualBasic程序設計簡明教程》6ConstNAsInteger=30PrivateSubCommand3_Click()Dima(1ToN)AsInteger,iAsInteger,maxAsInteger,minAsIntegerFori=1ToN'輸入學生成績
a(i)=Val(InputBox("請輸入第"&i&"位學生的成績"))Nextimax=a(1)'假定第一位學生的成績是最高分min=a(1)'假定第一位學生的成績是最低分Fori=2ToNIfmax<a(i)Thenmax=a(i)'確保max是當前最高分
EndIfIfmin>a(i)Thenmin=a(i)'確保min是當前最低分
EndIfNextiPicture1.Print"最高分是";maxPicture1.Print"最低分是";minEndSub例6.3統(tǒng)計全班最高分和最低分返回2023/12/13《VisualBasic程序設計簡明教程》76.2二維數組二維數組的定義方式:Dim數組名([下界To]上界,[下界To]上界)As類型例如:Dima(1To2,1To2)AsIntegera(1,1)a(1,2)a(2,1)a(2,2)2023/12/13《VisualBasic程序設計簡明教程》8說明:(1)通常把二維數組的第一個下標形象地稱為行下標,第二個下標稱為列下標。(2)二維數組的元素個數為行的長度×列的長度,行或者列的長度為各自的上界-下界+1。(3)類似地還可以定義多維數組。例如:
Dima(1To2,1To2,1To2)AsInteger’共有8個元素的三維數組2023/12/13《VisualBasic程序設計簡明教程》9例6.4
求兩個3×3矩陣的和。
PrivateSubCommand1_Click()ConstNAsInteger=3Dima(1ToN,1ToN)AsInteger,b(1ToN,1ToN)AsIntegerDimc(1ToN,1ToN)AsInteger,iAsInteger,jAsIntegerFori=1ToNForj=1ToNa(i,j)=Val(InputBox("輸入a("&i&","&j&")"))'輸入數據存入數組aNextjNextiMsgBox("矩陣A的數據輸入完畢!")Fori=1ToNForj=1ToNb(i,j)=Val(InputBox("輸入b("&i&","&j&")"))'輸入數據存入數組bNextjNextiMsgBox("矩陣B的數據輸入完畢!")2023/12/13《VisualBasic程序設計簡明教程》10Picture1.Print"開始輸出矩陣C的數據"Fori=1ToNForj=1ToNc(i,j)=a(i,j)+b(i,j)'矩陣求和
NextjNextiFori=1ToNForj=1ToNPicture1.PrintTab(j*4);c(i,j);'輸出數組cNextjPicture1.Print'輸出一行數據,另換一行
NextiEndSub2023/12/13《VisualBasic程序設計簡明教程》11輸入輸出返回2023/12/13《VisualBasic程序設計簡明教程》126.3動態(tài)數組動態(tài)數組在程序運行過程中才被分配存儲空間,它的定義方式是:
Dim數組名()As類型例如:
Dima()AsInteger2023/12/13《VisualBasic程序設計簡明教程》13數組名賦值Dima(1To3)AsInteger,b()AsInteger,i%Fori=1To3'對靜態(tài)數組a的所有元素賦值
a(i)=iNextib=a'數組名賦值
ForEachxInb'輸出動態(tài)數組b中所有元素的值
PrintxNextx2023/12/13《VisualBasic程序設計簡明教程》14兩個函數的格式是:
LBound(a[,n])UBound(a[,n])說明:(1)參數a是數組名。參數n表示數組a的第n維,如果省略,則默認是1。(2)LBound函數返回數組a第n維的下界,UBound函數返回數組a第n維的上界。LBound和UBound函數2023/12/13《VisualBasic程序設計簡明教程》15Array函數
Dimb(),i%b=Array(1,2,3)Fori=0To2Printb(i)Nexti2023/12/13《VisualBasic程序設計簡明教程》16ReDim語句使用ReDim語句,確定動態(tài)數組的維數以及元素下標的下界和上界。其一般形式為:
ReDim[Preserve]數組名([下界To]上界[,下界To上界,…])[As類型]2023/12/13《VisualBasic程序設計簡明教程》17說明:(1)可以多次使用ReDim語句對某個動態(tài)數組進行設置。(2)數組的維數以及元素下標的下界和上界都能夠改變,甚至下界和上界可以是有了確定值的變量,但是數組的類型不能改變。(3)每次執(zhí)行ReDim語句之后,數組中所有元素的值將會丟失。如果想保留數組元素的值,則可以使用關鍵字Preserve。2023/12/13《VisualBasic程序設計簡明教程》18例6.6
計算Fibonacci數列的前n項
PrivateSubCommand1_Click()Dima()AsLong,nAsInteger,iAsInteger,j%n=Val(Text1.Text)ReDima(1Ton)'設置動態(tài)數組的長度
Fori=1TonIfi=1Ori=2Thena(i)=1'第一項和第二項都是1Elsea(i)=a(i-1)+a(i-2)'每一項是前兩項之和
EndIfNextij=0Fori=1TonPicture1.PrintTab(j*7);a(i);j=j+1IfiMod5=0ThenPicture1.Printj=0EndIfNextiEndSub返回2023/12/13《VisualBasic程序設計簡明教程》196.4控件數組控件數組的創(chuàng)建方法:(1)復制現(xiàn)有的控件,然后粘貼在窗體中。(2)為現(xiàn)有的同類控件取同一個對象名,一般是與第一個控件的名字一致。這時系統(tǒng)會提示是否創(chuàng)建控件數組,選擇“是”即可。
2023/12/13《VisualBasic程序設計簡明教程》20例6.7
用控件數組改寫例4.6
PrivateSubCommand1_Click()DimsAsString,iAsIntegerDimt1(3)AsString,t2(4)AsStringt1(0)="計算機":t1(1)="汽車"t1(2)="機械":t1(3)="管理"t2(0)="足球":t2(1)="圍棋"t2(2)="游泳":t2(3)="文學"t2(4)="上網"s=s+"姓名:"+Text1.Text+vbCrs=s+"年齡:"+Text2.Text+vbCrFori=0To3IfOption1(i).Value=TrueThens=s+t1(i)+"系"+vbCrExitForEndIfNextIs=s+"愛好:"Fori=0To4IfCheck1(i).Value=1Thens=s+t2(i)EndIfNextiMsgBox(s)EndSub返回2023/12/13《VisualBasic程序設計簡明教程》216.5自定義類型自定義的類型又稱為記錄類型,它由一些基本類型的成員所組成。定義記錄類型的關鍵字是Type,其一般形式為:
Type記錄類型名成員表列
EndType2023/12/13《VisualBasic程序設計簡明教程》22說明:(1)對成員表列中的所有成員都應進行類型聲明。成員聲明的形式為:成員名As類型(2)記錄類型只是刻畫了一個數據結構的模型,并沒有定義實例,也不要求分配實際的內存空間。在程序中使用記錄類型時,必須定義記錄變量。2023/12/13《VisualBasic程序設計簡明教程》23Student類型
TypeStudentsnoAsLong'學號
nameAsString'姓名
sexAsString'性別
scoreAsInteger'成績
EndTypeDims1AsStudent,s2AsStudent引用記錄變量成員的形式為:記錄變量名.成員名例如:
s1.sno=2051226記錄變量2023/12/13《VisualBasic程序設計簡明教程》24記錄數組
Dims(1To10)AsStudent訪問記錄數組元素的成員:記錄數組名(下標).成員名例如:
s(2).sno=2051227Text1.Text=s(6).name
返回2023/12/13《VisualBasic程序設計簡明教程》256.6字符串的處理——格式轉換
⑴Val函數⑵Str函數⑶Asc函數⑷Chr函數⑸UCase函數⑹LCase函數2023/12/13《VisualBasic程序設計簡明教程》266.6字符串的處理——統(tǒng)計長度函數Len用于統(tǒng)計字符串的長度即所包含字符的個數,其格式是:
Len(s)例如Len("VB6.0環(huán)境")得到的值是7。2023/12/13《VisualBasic程序設計簡明教程》276.6字符串的處理——刪除多余的空格LTrim(s)RTrim(s)Trim(s)函數LTrim刪除字符串中前面的空格,函數RTrim刪除字符串中后面的空格,函數Trim則刪除字符串中前后兩邊的空格。2023/12/13《VisualBasic程序設計簡明教程》286.6字符串的處理——生成字符串⑴String函數
String(m,s|n)⑵Space函數
Space(n)(1)InStr函數
InStr([n,]s1,s2)(2)Replace函數
Replace(s1,s2,s3[,m][,n][,…])6.6字符串的處理——查找和替換2023/12/13《VisualBasic程序設計簡明教程》296.6字符串的處理——截取子串⑴Left函數
Left(s,n)⑵Right函數
Right(s,n)⑶Mid函數
Mid(s,m[,n])⑷Split函數
Split(s[,d][,n][,…])2023/12/13《VisualBasic程序設計簡明教程》30PrivateSubCommand1_Click()Dima()AsString,i%,j%,flagAsBoolean,name$a=Split(Text1.Text)'輸入學生姓名
Doname=InputBox("請輸入要查詢的學生姓名")flag=FalseFori=LBound(a)ToUBound(a)Ifa(i)=nameThenflag=True'找到,改變標志
ExitForEndIfNextiIfflag=TrueThenPicture1.Print"找到姓名為";name;"的學生"ElsePicture1.Print"沒有找到姓名為";name;"的學生"EndIfj=MsgBox("還要繼續(xù)查詢嗎?",vbYesNo+vbquestin)LoopWhilej=6EndSub例6.9
改寫例6.2
2023/12/13《VisualBasic程序設計簡明教程》31返回2023/12/13《VisualBasic程序設計簡明教程》326.7列表框列表框(ListBox)控件能夠顯示一個項目列表,用戶可以從中選擇一個或者多個項目。如果項目列表中的項目過多而無法一次全部顯示,則列表框將自動出現(xiàn)滾動條。在工具箱中圖示為:2023/12/13《VisualBasic程序設計簡明教程》33列表框的常用屬性屬性作用Name設置列表框的對象名Text確定用戶當前所選的項目,該屬性不能在屬性窗口中設置,只能在程序中設置或引用List設置列表框所顯示的項目列表ListCount確定列表框中項目的總數,該屬性只能在程序中設置或引用ListIndex確定當前選中的項目在項目列表中的索引值,該屬性只能在程序中設置或引用Selected確定項目列表中某個項目是否被選中,該屬性只能在程序中設置或引用MultiSelect確定列表框是否允許多選Style設置列表框的外觀,默認值是0,表示標準方式;如果是1,則項目的左邊有復選框2023/12/13《VisualBasic程序設計簡明教程》34說明:(1)程序第一個列表框控件的默認對象名是List1,依次類推。(2)List是列表框控件最重要的屬性之一,其屬性值是一個字符串數組,每一個元素存放項目列表其中的一個項目。(3)在程序中ListIndex和ListCount往往與List屬性配合使用。如果用戶未選擇任何項目,ListIndex的值是-1;如果用戶選中項目列表中的第一項,ListIndex的值是0;如果用戶選中項目列表中的最后一項,則ListIndex的值是ListCount-1。
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年企業(yè)物料策劃供應合同協(xié)議
- 2025年律師事務所服務協(xié)議標準文本
- 2025年通信電源項目申請報告模板
- 2025年穿水冷卻裝置項目提案報告
- 2025年住宅銷售經紀服務協(xié)議
- 2025年市場準入合規(guī)策劃合作框架協(xié)議
- 2025年企業(yè)簽訂網絡安全協(xié)議
- 2025年企業(yè)股東間保密協(xié)議策劃樣本
- 2025年實習生供求策劃協(xié)議書模板
- 2025年丹陽市美容院股東權益策劃與分配合同書
- 通信設備售后服務方案
- 行政倫理學教程(第四版)課件 第5章?行政責任
- HYT 215-2017 近岸海域海洋生物多樣性評價技術指南
- 初中生物校本課程綱要
- 陽光分級閱讀 Letters for Mr James 課件
- 賣花生混聲合唱簡譜
- 占道作業(yè)交通安全設施設置技術要求
- 數學方法在物理中的應用
- 《肝豆狀核變性》課件
- 體育教學小組合作
- 分布式儲能系統(tǒng)的成本效益評估
評論
0/150
提交評論