电竞比分网-中国电竞赛事及体育赛事平台

分享

VB程序設(shè)計(jì)數(shù)組

 你喜歡那個(gè) 2012-05-13

7.1  數(shù)組的概念

7.1.1  數(shù)組的定義

1.?dāng)?shù)組的定義

2.什么是

7.1.2          靜態(tài)數(shù)組與動(dòng)態(tài)數(shù)組

1. 靜態(tài)數(shù)組

l         以一維數(shù)組為例,其語法格式為

[Dim | Static | Private |Public] <數(shù)組名>[Lower to] Upper[As 元素類型說明]

其中,[Dim | Static | Private | Public]可選項(xiàng)指明數(shù)組的作用域。

Dim聲明為過程級(jí)數(shù)組;

Static聲明為靜態(tài)過程級(jí)數(shù)組;

Private聲明為模塊級(jí)數(shù)組;

Public聲明為全局?jǐn)?shù)組;

[Lower to] Upper指明數(shù)組的上下界,下界可以省略,其默認(rèn)下界為0

【例7.1】建立兩個(gè)數(shù)組,一個(gè)包含整數(shù),而另一個(gè)包含字符串。然后聲明一個(gè)Variant數(shù)組,并將整數(shù)數(shù)組和字符串?dāng)?shù)組放置其中。

1)創(chuàng)建Command1,編寫單擊事件過程

2)程序功能

l         簡單介紹靜態(tài)二維數(shù)組與三維數(shù)組。

2.動(dòng)態(tài)數(shù)組

一維動(dòng)態(tài)數(shù)組的聲明語法格式如下

[Dim | Static | Private | Public] <數(shù)組名>()[As 元素類型說明]

創(chuàng)建動(dòng)態(tài)數(shù)組的步驟為:

(1) 聲明數(shù)組為動(dòng)態(tài)數(shù)組,只須給數(shù)組附以一個(gè)空的維數(shù)表。

(2) 在使用數(shù)組之前,使用ReDim語句聲明其下標(biāo),以確定數(shù)組的維數(shù)以及元素的個(gè)數(shù),并立即為其分配存儲(chǔ)空間。

7.2  數(shù)組的基本操作

7.2.1  數(shù)組元素的輸入

1. 使用賦值語句為數(shù)組元素賦初值

【例7.2】使用賦值語句對數(shù)組進(jìn)行初始化。

Private Sub Form_Click()     

   Dim week(6) As String

   week(0)="Sunday"

   week(1)="Monday"

   print week(0),week(1)

End Sub

2. 使用Array 函數(shù)為一維數(shù)組賦初值

Array函數(shù)語法格式為

Dim <數(shù)組名> As Variant

<數(shù)組名>=Array(<列表>)

【例7.3】使用Array函數(shù)給數(shù)組City的元素賦初值。

編寫窗體的單擊事件過程如下:

Private Sub Form_Click()

   Dim City() As Variant

   City()=Array("北京","上海","西安","長沙")

   For  i =0 to 3

         Print "City("; i ; ")= ";City(i)

   Next i

End Sub

3. 使用InputBox函數(shù)為多維數(shù)組賦初值

【例7.4】給數(shù)組Fruit4)的元素賦初值。

Dim Fruit(4)  As  String

For i = 1 To 4

   Day(i) = InputBox("enter Day: ")

Next i

7.2.2  For Each…Next語句

1.         For Each…Next循環(huán)的語法:

For Each element In group

Statement

Next element

2.         使用For Each…Next時(shí)的幾點(diǎn)限制:

對于集合,element只能是一個(gè)Variant變量的名字,或一般的Object對象變量,或“對象瀏覽器”中列出的對象。對于普通數(shù)組。element 只能是Variant變量。For Each…Next不能與用戶自定義類型的數(shù)組一起使用,因?yàn)?/SPAN>Variant 不可能包含用戶自定義類型。

3.         舉例說明:下面的了過程利用For Each…Next結(jié)構(gòu)輸出字符型數(shù)組a中的每一個(gè)元素

Private Sub Form_Click()

  Dim a()    As String

   Dim x As Variant

  N = InputBox("請輸入一個(gè)整數(shù)")  '隨意指定一個(gè)數(shù)

  ReDim a(1 To N) As String        '按指定的數(shù)N調(diào)整數(shù)組a的大小

  For i = 1 To N                 '用常規(guī)ForNext循環(huán)語句給數(shù)組a各元素賦值

   a(i) = "" & i & "個(gè)元素"

  Next i

  For Each x In a                 'For EachNext結(jié)構(gòu)輸出數(shù)組a各元素的值

    Print x    '注意用到Variant變量x

  Next

End Sub

7.2.3  數(shù)組間的初始化

舉例說明。

【例7.5】將數(shù)組D整體賦值給數(shù)組E。

Dim D4 As String ,E() As string

D(0)="王華":D(1)="黎明":D(2)="白雪":D(3)="劉芳":D(4)="吳情"

E =D

通過數(shù)組間的賦值,將數(shù)組D整體賦值給數(shù)組E,同時(shí)數(shù)組E的大小被確定為5

7.2.4  數(shù)組的輸出

舉例說明。

【例7.6】隨機(jī)產(chǎn)生二維數(shù)組a(3,3),交換最左邊和最右邊的兩列元素,然后輸出對角線上的元素。

編寫窗體的單擊事件過程如下:

Private Sub Form_Click()

   Dim a(3, 3) As Integer

   For i = 0 To 3

      For j = 0 To 3

         a(i, j) = Int(90 * Rnd + 10)      

      Next j

   Next  i

   For i = 0 To 3

      Print

      For j = 0 To 3

         Print a(i, j);

      Next j

   Next i      

   For i = 0 To 3

     temp = a(i, 0): a(i, 0) = a(i, 3): a(i, 3) = temp

   Next i

   Print

   Print "輸出數(shù)組對角線元素"

   For i = 0 To 3

      If i - (3 - i) <= 0 Then

        Print Tab(i * 3 + 1); a(i, i); Spc((2 - 2 * i) * 3 + 1); a(i, 3 - i)

      Else

        Print Tab((3 - i) * 3 + 1);a(i, 3 - i);Spc((2 * i - 4) * 3 + 1); a(i, i)

      End If

   Next i

End Sub

7.3   數(shù)

7.3.1  控件數(shù)組的概念

控件數(shù)組是一組具有相同名稱(即Name屬性相同)和類型的控件,比如一組按鈕或一組單選鈕,這些控件共享相同的事件過程。與其他類型的數(shù)組一樣,控件數(shù)組中的每個(gè)控件都有惟一的下標(biāo),其下標(biāo)值由Index屬性指定。

7.3.2  創(chuàng)建控件數(shù)組

1.         創(chuàng)建一個(gè)控件數(shù)組的步驟。

2.         舉例說明。

小結(jié):

數(shù)組這個(gè)概念,在各種編程語言中都有出現(xiàn)。數(shù)組,簡言之,就是將一連串?dāng)?shù)字聚集在一起,形成組這個(gè)概念,其功能中存儲(chǔ)一系列類型相同的變量,并且可以用相同名稱引用這些變量,當(dāng)使用多個(gè)類型和功能一致的數(shù)據(jù)時(shí),使用數(shù)組可縮短和簡化程序。本講重點(diǎn)介紹數(shù)組的概念、定義和使用方法及其在程序設(shè)計(jì)中的應(yīng)用。

作業(yè):

1.什么是靜態(tài)數(shù)組?什么是動(dòng)態(tài)數(shù)組?二者有什么區(qū)別?

2.使用控件數(shù)組有什么好處?如何創(chuàng)建控件數(shù)組?

3.對于動(dòng)態(tài)數(shù)組,如何實(shí)現(xiàn)既增加數(shù)組元素的個(gè)數(shù),又保存該數(shù)組中原有的值?

4.舉例說明控件數(shù)組中不同的數(shù)組元素可以對同一事件過程有不同的響應(yīng)。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請遵守用戶 評(píng)論公約

    類似文章 更多