VB-数组的使用:

数组的使用:

数组:在实际应用中,要处理同一类型的成批数据。用一批具有相同名字,不同下标的下标变量来表示同一属性一组数据,能更清楚地表示它们之间的关系。

1、数组的定义。

在VB中可以用(Dim、ReDim、Static、Public)四个语句定义数组。

(1)Dim用在窗体模块或标准模块中,也可用于过程中。

(2)ReDim用在过程中。

(3)Static用在过程中。

(4)Public用在标准模块中定义全局数组。

定义方法:(以Dim为例)

第一种格式:

Dim数组名(第1维下标上界,第2维下标上界,……第n维下标上界)As类型名

第二种格式:

Dim数组名([下界to]上界[[下界to]上界]……)As类型名

VB-数组的使用:

注:一般数组下界只能是0或1,默认为0,如果切以1为下标,可用OptionBase n定义。

如果需在运行时定义数组大小,可以通过下面方法进行。

(1)用ReDime语句定义

n=InputBox(“输入n的值”)

ReDim A(n)

(2)先在窗体层、标准模块或过程中用Dim或Public声明一个没有下标的数组,(括号不能省略)然后在过程中用ReDim语句定义带下标的数组。

Dim T()

S=InputBox(“请输入S”)

ReDim T(S)

Lbound(数组[,维])返回“数组”某一“维”的下界值。

Ubound(数组[,维])返回“数组”某一“维”的上界值。

例:1、输入一组数,求其输入逆序。

Private Sub Form_Click()

Dim a(5)

For i = 1 To 5

a(i) = InputBox("请输入所需数")

Print "第"; i; "个输入数为:"; a(i)

Next i

Print "输入数的逆序为:"

For i = 5 To 1 Step -1

Print a(i),

Next i

End Sub

例:2、冒泡排序。(十个数)

Private Sub Form_Click()

Dim a(10)

For i = 1 To 10

x = InputBox("请输入所需数据")

a(i) = Val(x)

Print "第"; i; "个数为:"; a(i)

Next i

For m = 1 To 9

For n = m + 1 To 10

If a(m) < a(n) Then

t = a(m)

a(m) = a(n)

a(n) = t

End If

Next n

Next m

Print "所输入数按降序排列为:"

For i = 1 To 10

Print a(i); " ";

Next i

End Sub

例:3、任意数降序排序。

Private Sub Form_Click()

Dim a()

s = InputBox("请输入要排序数字的个数:")

ReDim a(s)

For i = 1 To s

x = InputBox("请输入所需数据")

a(i) = Val(x)

Print "第"; i; "个数为:"; a(i)

Next i

For m = 1 To s - 1

For n = m + 1 To s

If a(m) < a(n) Then

t = a(m)

a(m) = a(n)

a(n) = t

End If

Next n

Next m

Print "所输入数按降序排列为:"

For i = 1 To s

Print a(i),

If i Mod 5 = 0 Then Print

Next i

End Sub

例:4、创建一个M×N的数组,并输出。

Private Sub Form_Click()

m = InputBox("请输入数组第一个下标:")

m = Val(m)

n = InputBox("请输入数组第二个下标:")

n = Val(n)

ReDim a(m, n)

For i = 1 To m

For j = 1 To n

x = InputBox("请输入所需数据")

a(i, j) = Val(x)

Print "第"; "a("; i; j; ")"; "个数为:"; a(i, j)

Next j

Print

Next i

Print "所输入数组为:"

For i = 1 To m

For j = 1 To n

Print a(i, j),

Next j

Print

Next i

End Sub

例:5、创建一个M×N的数组,输出这个数组,及其转置数组。

Private Sub Form_Click()

m = InputBox("请输入数组第一个下标:")

m = Val(m)

n = InputBox("请输入数组第二个下标:")

n = Val(n)

ReDim a(m, n)

For i = 1 To m

For j = 1 To n

x = InputBox("请输入所需数据")

a(i, j) = Val(x)

Print "第"; "a("; i; j; ")"; "个数为:"; a(i, j)

Next j

Print

Next i

ReDim b(n, m)

For i = 1 To n

For j = 1 To m

b(i, j) = a(j, i)

Next j

Next i

Cls

Print "所输入数组为:"

For i = 1 To m

For j = 1 To n

Print a(i, j),

Next j

Print

Next i

Print "所输出转置数组为:"

For i = 1 To n

For j = 1 To m

Print b(i, j),

Next j

Print

Next i

End Sub

例:6、创建一个M×M数组并使其对角线元素为“1”,其余元素为“0”

Private Sub Form_Click()

m = InputBox("请输入数组下标:")

m = Val(m)

ReDim a(m, m)

For i = 1 To m

For j = 1 To m

If i = j Or i + j = m + 1 Then

a(i, j) = 1

Else

a(i, j) = 0

End If

Next j

Next i

FontSize = 20

Print "所求数组为:"

For i = 1 To m

For j = 1 To m

Print a(i, j);

Next j

Print

Next i

End Sub

  

爱华网本文地址 » http://www.aihuau.com/a/25101017/359392.html

更多阅读

matlab的使用:8 如何画不同类型的三维图像

matlab的使用:[8]如何画不同类型的三维图像——简介这是本系列经验的第八篇,主要介绍用matlab软件画三维图像的一些相关函数,使用这些函数可以很方便的画出想要的图形,非常直观好用。matlab的使用:[8]如何画不同类型的三维图像——工具/

C#的动态数组 c 动态数组的用法

在使用数组的过程中,有时候希望数组的长度和元素个数能随程序的运行不断改变,但改变一次就要重新开辟一个新的数组对象,这样将占用内存空间。为了解决这个问题,Microsoft.NET Framework 体统了一个ArrayList类,专门用于处理可按动态增减

声明:《VB-数组的使用:》为网友你和梦想我都要分享!如侵犯到您的合法权益请联系我们删除