文档介绍:第4章数组
数组定义及引用方法,与数组有关的一些常用算法
本章要求:
重点:
(1)理解数组的用途和存放形式;
(2)掌握一维数组和二维数组的定义及引用方法;
(3)掌握动态数组的定义和使用;
(4)能应用数组解决一些常见问题,如复杂统计、平均值、排序和查找等。
难点:
与数组有关的一些常用算法
输入10个数,输出它们的平均值及大于平均值的那些数?
引例:
。
输入 A
当 N<=10
N=N+1
打印 Ave
S=0: N=1
S=S+A
Ave=S/10
Dim N%, S!, A!, Ave!
For N=1 to 10
A=Val(InputBox(“Enter A Number”))
S=S+A
Next N
Ave=S/10
Print Ave
输入10个数,输出它们的平均值及大于平均值的那些数。
引例:
如果使用:A1,A2,A3,A4,A5,A6,A7,A8,A9,A10
Dim N%, S!, Ave!, A1!, A2!….,A10! ‘实际程序是不能这样写
A1=Val(InputBox(“Enter A1 Number”))
A2=Val(InputBox(“Enter A2 Number”))
A3=Val(InputBox(“Enter A3 Number”))
A4=Val(InputBox(“Enter A4 Number”))
A5=Val(InputBox(“Enter A5 Number”))
A6=Val(InputBox(“Enter A6 Number”))
引例:
A7=Val(InputBox(“Enter A7 Number”))
A8=Val(InputBox(“Enter A8 Number”))
A9=Val(InputBox(“Enter A9 Number”))
A10=Val(InputBox(“Enter A10 Number”))
S=A1+A2+A3+A4+A5+A6+A7+A8+A9+A10
Ave=S/10
IF A1>Ave Then Print A1
IF A2>Ave Then Print A2
IF A3>Ave Then Print A3
IF A4>Ave Then Print A4
……….. ‘实际程序是不能这样写
引例:
思考:
如果能使用Ai ( i=1,2,…..10 ) 的形式?
使用循环来写程序
VB中表示下标变量就是通过定义数组来实现的。
概述
数组的概念:数组并不是一种数据类型,而是一组相同类型数据的集合。用一个统一的名字(数组名)代表逻辑上相关的一批数据,每个元素用下标变量来区分;下标变量代表元素在数组中的位置。
VB中数组的表示形式:
A(1), A(10) ‘一维数组
X(1,1), X(2,10) ‘二维数组
Y(0,0,0), Y(1,2,5) ‘三维数组
第五章数组
Visual Basic中的数组分类:
按数组的大小(元素个数)是否可以改变来分为:
定长数组、动态(可变长)数组。
按元素的数据类型可分为:
数值型数组、字符串数组、逻辑数组、
日期型数组、变体数组等、对象数组。
按数组的维数可分为:
一维数组、二维数组、多维数组。
概述
一维数组形式:
Dim 数组名([<下界>to]<上界>)[As <数据类型>]
或: Dim 数组名[<数据类型符>]([<下界>to]<上界>)
例:Dim a(1 to 10) As Integer ‘声明了a数组有10个元素
1是下标的下界
10是下标的上界
数组元数的数据类型
与上面声明等价形式: Dim a%(1 to 10)
一维数组
一维数组的声明
说明:
。
:上界-下界+1。
<下界>为0,若希望下标从1开始,可在模块的通用部分使用Option Base语句将设为1。其使用格式是:
Option Base 0|1 ‘后面的参数只能取 0 或 1
例如:
Option Base 1 ‘将数组声明中缺省<下界>下标设为 1
一维数组的声明
4.<下界>和<上界>不能使用变量,必须是常量,常量可以是直接常量、符号常量,一般是整型常量。
,则数组的类型为变体类型。
。
一维数组的声明
Dim N As Integer
N=Val(InputBox(“Enter N=?”))
Dim A(N) As Integer
×
A