《Visual Basic程序設(shè)計(jì)》課件第5章_第1頁(yè)
《Visual Basic程序設(shè)計(jì)》課件第5章_第2頁(yè)
《Visual Basic程序設(shè)計(jì)》課件第5章_第3頁(yè)
《Visual Basic程序設(shè)計(jì)》課件第5章_第4頁(yè)
《Visual Basic程序設(shè)計(jì)》課件第5章_第5頁(yè)
已閱讀5頁(yè),還剩19頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

數(shù)組的基礎(chǔ)知識(shí)一維數(shù)組二維數(shù)組控件數(shù)組動(dòng)態(tài)數(shù)組主要內(nèi)容1.1數(shù)組的概念數(shù)組用于表示一組性質(zhì)相同的、有序的數(shù)據(jù),這組數(shù)據(jù)用一個(gè)統(tǒng)一的名稱(chēng)來(lái)代替,稱(chēng)為數(shù)組名。例如,1000個(gè)學(xué)生的數(shù)學(xué)成績(jī),可以統(tǒng)一取名為Score。數(shù)組名的命令規(guī)則與簡(jiǎn)單變量的命名規(guī)則相同。數(shù)組中的每一個(gè)成員稱(chēng)為數(shù)組元素。為了在處理時(shí)能夠區(qū)分?jǐn)?shù)組中的每一個(gè)元素,需要用一個(gè)索引號(hào)加以區(qū)別,該索引號(hào)稱(chēng)為下標(biāo)。數(shù)組中的每一個(gè)元素可以用“數(shù)組名”和“下標(biāo)”唯一的表示,方法是:<數(shù)組名>(下標(biāo))1.1數(shù)組的概念在表示數(shù)組元素時(shí),應(yīng)注意以下幾點(diǎn):(1)要用圓括號(hào)把下標(biāo)括起來(lái),不能用中括號(hào)或者大括號(hào)代替,也不能省略圓括號(hào)。例如,將數(shù)組元素Score(1)表示成Score[1]或者Score{1}都是錯(cuò)誤的;(2)下標(biāo)可以是常量、變量或者表達(dá)式,但是其值必須是整數(shù),且在被引用前必須有確定的值,否則將會(huì)被自動(dòng)四舍五入成整數(shù);(3)下標(biāo)的最小取值稱(chēng)之為下界,下標(biāo)的最大取值稱(chēng)之為上界。在不加任何說(shuō)明的情況下,數(shù)組的下界默認(rèn)為0。但是我們也可通過(guò)OptionBase語(yǔ)句來(lái)修改數(shù)組的下界。OptionBase語(yǔ)句只能在模塊級(jí)中使用。

1.2數(shù)組的維數(shù)

如果數(shù)組的元素只有一個(gè)下標(biāo),則稱(chēng)這個(gè)數(shù)組為一維數(shù)組。用兩個(gè)下標(biāo)來(lái)表示元素的數(shù)組稱(chēng)為二維數(shù)組。對(duì)于可以表示成表格形式的數(shù)據(jù),例如矩陣、行列式等,用二維數(shù)組來(lái)表示是非常方便的。根據(jù)問(wèn)題的需要,我們還可以選擇使用三維數(shù)組、四維數(shù)組,甚至更多維的數(shù)組。在VisualBasic中最多允許有60維數(shù)組。例如我們想表示空間上的一個(gè)點(diǎn)P,其坐標(biāo)有三個(gè),分別是X軸、Y軸、Z軸上的坐標(biāo),那么我們可以使用三維數(shù)組來(lái)表示,數(shù)組的第一維表示X坐標(biāo),第二維表示Y坐標(biāo),第三維表示Z坐標(biāo),如用P(x,y,z)來(lái)表示。1.3數(shù)組的聲明

數(shù)組在定義之前必須先聲明,聲明數(shù)組的目的是為數(shù)組分配存儲(chǔ)空間,“數(shù)組名”即為這個(gè)存儲(chǔ)空間的名稱(chēng),而數(shù)組元素則為存儲(chǔ)空間的每一個(gè)單元。每個(gè)單元的大?。此甲止?jié)數(shù))與數(shù)組的類(lèi)型有關(guān)。

1.4數(shù)組函數(shù)

1.Array函數(shù): <數(shù)組變量名>=Array(<元素列表>)將<元素列表>中的數(shù)據(jù)賦給一個(gè)Variant型數(shù)組的數(shù)組元素,即可以使用該函數(shù)為數(shù)組元素賦值。例如:2.IsArray函數(shù): IsArray(變量名)判斷一個(gè)變量是否為數(shù)組變量。函數(shù)值為Boolean型3.下界函數(shù)(Lbound)

Lbound(數(shù)組名[,維數(shù)])求數(shù)組指定維數(shù)的最小下標(biāo)。函數(shù)值為L(zhǎng)ong型數(shù)據(jù)。4.上界函數(shù)(Ubound)UBound(數(shù)組名[,維數(shù)]) 返回2.1數(shù)列排序案例說(shuō)明該程序可以產(chǎn)生一個(gè)包含十個(gè)元素的隨機(jī)整數(shù)序列,通過(guò)運(yùn)行代碼可以求出這個(gè)數(shù)列中的最大值、數(shù)列的平均值以及按升序排列,當(dāng)按下“插入新數(shù)據(jù)”按鈕時(shí),用戶(hù)可以通過(guò)鍵盤(pán)輸入一個(gè)新的整數(shù),構(gòu)成一個(gè)包含11個(gè)元素的數(shù)組,并且把新輸入的整數(shù)按升序插入到正確的位置,

2.2程序?qū)崿F(xiàn)

界面設(shè)計(jì):在界面上添加5個(gè)命令按鈕,按圖5-3調(diào)整控件的大小和位置,并按照?qǐng)D示設(shè)置窗體和命令按鈕的Caption屬性,并把它們的名稱(chēng)依次更改為cmdCreat、cmdMax、cmdAve、cmdSort、cmdInsert。2.代碼設(shè)計(jì):2.3相關(guān)知識(shí)

1.一維數(shù)組的定義

Public|Private|Dim<數(shù)組名>(下標(biāo))[As<類(lèi)型>]

(1)建立“全局?jǐn)?shù)組”,在模塊的聲明段用“Public”語(yǔ)句聲明數(shù)組;(2)建立“模塊”或“窗體數(shù)組”,在模塊的聲明段用“Private”語(yǔ)句聲明數(shù)組;(3)建立“局部數(shù)組”,在過(guò)程中用“Private”語(yǔ)句聲明數(shù)組。2.3相關(guān)知識(shí)

2.幾點(diǎn)說(shuō)明:(1)“下標(biāo)”的一般形式為“[下界To]上界”。上界、下界為整數(shù),不得超過(guò)Long數(shù)據(jù)類(lèi)型的范圍,并且下界應(yīng)該小于上界。(2)如果無(wú)“下界”,則默認(rèn)為“下界”為0。如果希望“下界”默認(rèn)為1,應(yīng)該通過(guò)語(yǔ)句“OptionBase1”來(lái)設(shè)置;(3)引用數(shù)組元素的格式是“數(shù)組名(下標(biāo))”。(4)給數(shù)組元素賦值的方法與變量的賦值相同。(5)要注意區(qū)分“可以使用的最大下標(biāo)值”和“元素個(gè)數(shù)”?!翱梢允褂玫淖畲笙聵?biāo)值”指的是“下標(biāo)值”的“上界”,而“元素個(gè)數(shù)”則是指數(shù)組中“成員”的個(gè)數(shù)。(6)在同一個(gè)過(guò)程中,“數(shù)組名”不能與“變量名”相同,否則會(huì)出現(xiàn)“當(dāng)前范圍內(nèi)的聲明重復(fù)”的錯(cuò)誤。返回3.1變換矩陣案例說(shuō)明通過(guò)這個(gè)案例來(lái)掌握二維數(shù)組中第一維下標(biāo)和第二維下標(biāo)的含義,以及在程序中如何對(duì)二維數(shù)組的下標(biāo)進(jìn)行控制。在一個(gè)二維數(shù)組中存入一組數(shù)據(jù),并且將這些數(shù)據(jù)按矩陣的方式顯示在窗體的控件上。運(yùn)行程序時(shí),當(dāng)用戶(hù)按下“行列互換”按鈕時(shí),可以實(shí)現(xiàn)矩陣的行列互換,并且顯示在右邊的“圖片框”中,按下“行顛倒”和“列顛倒”按鈕時(shí),能實(shí)現(xiàn)矩陣相關(guān)數(shù)據(jù)的“顛倒”,按下“退出”按鈕時(shí)則可以退出程序。3.2程序?qū)崿F(xiàn)1.界面設(shè)計(jì):在窗體上添加2個(gè)圖片框(PictureBox)控件、4個(gè)命令按鈕控件,調(diào)整控件的大小和位置,并設(shè)置各個(gè)控件的有關(guān)屬性:

2.代碼設(shè)計(jì):3.3相關(guān)知識(shí)1.二維數(shù)組的定義:[Public|Private|Dim|Static]數(shù)組名(下標(biāo)1,下標(biāo)2)[As<類(lèi)型>]說(shuō)明:Public、Private、Dim和Static的用法與變量的定義一樣。每一維的下標(biāo)都有上界和下界來(lái)標(biāo)示下標(biāo)的取值范圍。每一維的大小為“上界-下界+1”,二維數(shù)組元素的個(gè)數(shù)為“兩個(gè)維的大小的乘積”。2.二維數(shù)組元素的引用二維數(shù)組的元素的引用方法和一維數(shù)組相同,格式為: 數(shù)組名(下標(biāo)1,下標(biāo)2)說(shuō)明:“下標(biāo)1”、“下標(biāo)2”可以是常量、變量或者表達(dá)式,并且它們的取值范圍不可以超過(guò)所聲明的上界和下界。3.4拓展知識(shí)1.案例說(shuō)明: 在窗體上繪制一個(gè)簡(jiǎn)易迷宮。在本案例中,“迷宮”用一個(gè)由0和1組成的“20×20”的矩陣來(lái)表示,這個(gè)矩陣可以定義為一個(gè)二維數(shù)組,整型,比如a(20,20)。在這個(gè)二維數(shù)組中,設(shè)0表示“隔墻”,1表示“通路”。 在一個(gè)記事本文件中先畫(huà)好“迷宮”的線路,文本內(nèi)容全部由0和1組成。然后利用文件操作的“讀方式”和“字符串操作”函數(shù),把這個(gè)文件中的每一行中的每一個(gè)字符讀入到這個(gè)二維數(shù)組的各個(gè)數(shù)組元素中,根據(jù)數(shù)組元素中的值是0還是1,則利用窗體的“Line”方法畫(huà)出“黑”“白”分明的“正方形”,其實(shí)“迷宮”就是由這些“正方形”緊密排列而成的。返回4.1簡(jiǎn)易計(jì)算器案例說(shuō)明該“計(jì)算器”可以實(shí)現(xiàn)簡(jiǎn)單的四則混合運(yùn)算。用戶(hù)通過(guò)界面上的按鈕輸入“操作數(shù)”和“操作符”,按下“=”按鈕之后可以在文本框中顯示運(yùn)算結(jié)果。按下“Cls”按鈕可以清除文本框內(nèi)容,按下“Exit”則退出“計(jì)算器”。

4.2

程序?qū)崿F(xiàn)

1.界面設(shè)計(jì) 在計(jì)算器中的0~9數(shù)字“按鈕”以及小數(shù)點(diǎn)“按鈕”的功能是一樣的,用來(lái)完成輸入數(shù)據(jù)的工作,而“+”、“-”、“×”、“÷”以及“Mod”按鈕的功能也是相通的,主要是提供輸入運(yùn)算符,以完成不同的運(yùn)算。對(duì)于這些功能基本相同的控件,在實(shí)際編程中,無(wú)需定義單個(gè)的控件,因?yàn)檫@樣在控件數(shù)量上會(huì)比較多,容易混淆。2.代碼設(shè)計(jì):4.3相關(guān)知識(shí)1.控件數(shù)組的概念“控件數(shù)組”由是一組相同類(lèi)型的控件組成的,這一組控件共用一個(gè)相同的控件名稱(chēng),即“名稱(chēng)”屬性必須相同,具有基本相同的屬性設(shè)置。當(dāng)建立控件數(shù)組時(shí),系統(tǒng)給每個(gè)元素賦予了一個(gè)唯一的索引號(hào)(Index),即控件數(shù)組的“下標(biāo)”,下標(biāo)值由Index屬性指定。通過(guò)“屬性”窗口的Index屬性,可以知道該控件的下標(biāo)是多少。系統(tǒng)規(guī)定第一個(gè)控件數(shù)組元素的下標(biāo)是0,也就是說(shuō),控件數(shù)組的名字由“名稱(chēng)”屬性指定,而數(shù)組中的每個(gè)元素則由Index屬性指定。4.3相關(guān)知識(shí)2.創(chuàng)建控件數(shù)組的方法創(chuàng)建控件數(shù)組的方法有兩種:(1)在進(jìn)行界面設(shè)計(jì)添加控件時(shí),通過(guò)“復(fù)制”、“粘貼”建立。(2)在給控件對(duì)象命名時(shí)建立,

4.4拓展知識(shí)1.函數(shù)Format的應(yīng)用Forma()函數(shù)可以接受格式代碼,按指定的格式輸出表達(dá)式。使用格式為:Format(表達(dá)式[,格式])2.[案例5-5]——改進(jìn)的“調(diào)色板”返回5.1變化矩陣案例說(shuō)明該程序在運(yùn)行時(shí),如果單擊“輸出(3×3)數(shù)組”按鈕,則會(huì)在界面上輸出一個(gè)3行3列的矩陣,如圖5-14所示;如果單擊“輸出(3×4)數(shù)組”,則會(huì)在界面上輸出一個(gè)3行4列的矩陣,如圖5-15所示。從表面上看,這應(yīng)該需要定義兩個(gè)不同的二維數(shù)組,但在程序中我們并沒(méi)有定義兩個(gè),僅僅需要一個(gè)數(shù)組就可以實(shí)現(xiàn)該程序。5.2

程序?qū)崿F(xiàn)

1.界面設(shè)計(jì):2.代碼設(shè)計(jì):5.3相關(guān)知識(shí)可以通過(guò)使用“動(dòng)態(tài)數(shù)組”,在程序中任意改變數(shù)組的長(zhǎng)度。在VisualBasic6.0中,“動(dòng)態(tài)數(shù)組”是最靈活、最方便的,有助于有效管理內(nèi)存。動(dòng)態(tài)數(shù)組的定義一般分為兩步:5.3相關(guān)知識(shí)1.聲明一個(gè)沒(méi)有下標(biāo)參數(shù)的數(shù)組,其格式為:Public|Static|Dim<數(shù)組名>()[As類(lèi)型]“Public”,“Dim”,“Static”或“Dim”與前面的定義語(yǔ)句說(shuō)明是一致的。2.用“ReDim”語(yǔ)句分配數(shù)組實(shí)際的元素個(gè)數(shù),格式為:ReDim[Preserve]數(shù)組名[(維數(shù)定義)][As數(shù)據(jù)類(lèi)型]……5.3相關(guān)知識(shí)幾點(diǎn)說(shuō)明:(1)“上界”和“下界”可以是常量和有確定值的變量;(2)可以使用“ReDim”語(yǔ)句多次改變數(shù)組的數(shù)組元素個(gè)數(shù)和維數(shù),但不能改變這個(gè)數(shù)組的數(shù)據(jù)類(lèi)型;(3)如果重新定義數(shù)組,則會(huì)刪除它原有數(shù)組元素中的數(shù)據(jù),并將數(shù)值型數(shù)組元素全部賦0,將字符型數(shù)組元素全部賦空

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論