第6章 数 组
前面各章使用的变量均为简单变量。在处理某些实际问题时,使用简单变量很不方便,甚至难以胜任。例如,成批数据的排序,找出高于或低于平均值的数据等。
6.1 数组的概念
6.1.1 数组与数组元素
数组—─用一个统一的名称表示的、顺序排列的一组变量.
将若干个具有相同性质的变量组合在一起形成的变量表格。
数组名—─变量表格的名称,数组的命名与简单变量的命名规则相同。 数组元素(下标变量)—─数组中的变量。
下标—─变量在表格中的存放位置。可以用数组名及下标惟一地识别一个数组的元素。
例如:S(5)代表数组S中的下标为5的数组元素。 其中:S是数组名,5是下标。 注意:
(1)下标必须用括号括起来。S(5)是一个下标变量,而S5是一个简单变量。 (2)下标可以是常量、变量或表达式,还可以是下标变量。例如:
例:设A=2, A1=3, B=1, C=4。根据给出的数组X写出下列下标变量的值。 解:
1.X(3)=18 2.X(C)=X(4)=98 3.X(A+A1)=X(5)=76
X(1) X(2) X(3) X(4) X(5) X(6)
57 42 18 98 76 6 4.X(X(A+C)-A1)=X(X(6)-A1)=X(3)=18
(3)下标为整数,否则将自动取整(舍去小数部分)。 (4)下标的最大值和最小值分别称为数组的上界和下界。
6.1.2 数组的类型
与简单变量一样,可以声明任何基本数据类型的数组,以及用户自定义类型和对象类型的数组。
但在同一个数组中,所有元素的类型相同(除了Variant类型)。
6.1.3 数组的维数
数组的维数—─描述元素在数组中的位置所需的下标个数。
一维数组—─数组元素用一个下标表示。
二维数组—─数组元素用两个下标表示。
例如,记录30个学生,每个学生5门课程的成绩(灰色部分)。
学生1 学生2 学生3 … 学生30 语 文 85 69 77 … 88 数 学 60 74 86 … 90 外 语 55 80 72 … 75 物 理 78 76 80 … 88 化 学 88 79 95 … 82 如果数组的名称为S,则有:
S(i, j)表示第i个学生、第j门课程的成绩。 Visual Basic最多可以使用16维的数组。
数组的三要素—─类型、维数、每维下标的范围。
6.1.4 数组的形式
固定大小的数组——数组中元素的个数固定不变。
动态数组——经重新声明后,可以改变数组的大小(下标范围)。
6.2 固定大小的数组
6.2.1 数组的声明
一、变量的作用范围
工程级(全局)变量——在整个工程的所有模块中有效。
窗体级(模块级)变量——在声明变量的窗体内的所有过程中有效。 过程级变量——仅在声明变量的过程内有效。 例如,声明窗体级变量: 在窗体顶部的声明段中:
Dim a As Integer ' 或Private a As Integer
过程代码:
Private Sub Command1_Click()
'Dim a As Integer ' 此语句将变量a声明为私有变量 a = 12 End Sub
Private Sub Command2_Click() Print a & \End Sub
Private Sub Command3_Click() Print a & \End Sub
例如,声明全局变量: 在标准模块的声明段中:
Public aa As Integer
Form1中的代码:
Private Sub Command1_Click() aa = 12 Form2.Show End Sub
Form2中的代码:
Private Sub Command1_Click() Print aa End Sub
二、数组的声明