环球网校是美国纳斯达克上市企业欢聚时代(NASDAQ:YY)旗下品牌 | 住房和城乡建设部 建筑人才培训合作单位
您现在的位置在: > 计算机类 > 计算机等级考试 > 考试辅导 >

2011年度计算机等级考试二级VB(21)

2011-08-07 来源:互联网 作者:第一考试网

2011年度计算机等级考试二级VB(21)

#

5.3动态数组及声明

#

1. 动态数组的建立与声明

#

建立动态数组的方法是:利用Dim、Private、Public语句声明括号内为空的数组,然后在过程中用ReDim语句指明该数组的大小。语法是:

#

ReDim 数组名(下标1[,下标2…]) [As 类型]

#

其中下标可以是常量,也可以是有了确定值的变量,类型可以省略,若不省略,必须与Dim中的声明语句保持一致。

#

例: Dim D() As Single #

Sub Form_Load() #

……

#

ReDim D(4,6) #

…… #

End Sub #

2.注意事项

#

(1)在动态数组ReDim语句中的下标可以是常量,也可以是有了确定值的变量。 #

(2)在过程中可以多次使用ReDim来改变数组的大小,也可改变数组的维数。 #

(3)每次使用ReDim语句都会使原来数组中的值丢失,可以在ReDim语句后加Preserve参数来保留数组中的数据,但使用Preserve只能改变最后一维的大小,前面几维大小不能改变。

#

1. 给数组元素赋初值

#

(1) 利用循环结构 #

例:Dim iA(1 To 10) As Integer #

For i=1 To 10 #

A(i)=0 #

Next i #

(2) 利用Array函数

#

例:Dim a As Variant, b As Variant, i%

#

a = Array (1,2,3,4,5)

#

b = Array ("abc","def","67")

#

For i=0 To Ubound (a)

#

Picture1.print a(i);"";

#

Next i #

For i=0 To Ubound (b)

#

Picture1.print b(i);""; #

Next i #

2.数组的输入

#

(1) 通过InputBox函数输入适合输入少量数据。

#

例:Dim sB(3,4) As singer

#

For i=0 To 3

#

For j=0 To 4

#

SB(i,j) =InputBox("输入" & i & j & "的值")

#

Next j #

Next i #

(2) 通过文本框控件输入

#

对大批量的数据输入,采用文本框和函数split()\join()进行处理,效率更高。 #

3.数组的赋值 #

在VB6.0中可以直接将一个数组的值赋值给另一个数组:

#

Dim a(3) as integer, b() as integer

#

A(0)=2: A(1)=5: A(2)=-2: A(3)=2

#

b=a #

在早期的VB中,这需要用循环语句才可以实现:

#

ReDim b(UBound(a))

#

For I=0 to UBound(a) #

b(I)=a(I) #

Next i #

注意:(1)赋值号两边的数据类型必须一致;

#

(2)如果赋值号左边的是一个动态数组,则赋值时系统自动将动态数组ReDim成右边相同大小的数组;

#

(3)如果赋值号左边的是一个大小固定的数组,则数组赋值出错。

#

4.数组的输出 #

用For……Next循环语句输出。 #

5.求数组中最大元素和所在下标及各元素之和

#

求数组中最大元素及下标,一般假设第一个元素及下标为最大,然后将该数与数组中的其他元素逐一比较,若有比其大的就替换,同时替换下标。

#

6.交换数组中各元素

#

交换的要求是将数组第一个元素与最后一个交换,第二个与倒数第二个交换,依次类推。 #

责编: 返回顶部  打印

关于我们联系我们友情链接网站声明网站地图广告服务帮助中心