- 1、本文档共20页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第6章数组
利用数组可以有效地存储和处理成批数据
本章主要内<
数组的概念
数组的声明和应用 动态数组
*For Each... Next循环语句 控件数组 程序举例
*
6.1.1数组与数组元素
简单变量用一个变量名标识,不同的变量使用不同的 变量名表示。处理成批的数据时,必须使用数组来处理表 示100个学生的成绩,采用简单变量来表示:
sl, s2, s3, ... s99, slOO
采用数组来表示:t(0), t(l), t(2),... t(98), t(99)
t(k) (k=0,l,2,...99)为数组元素(或称下标变量),它表 示第k个学生的成绩,k称为下标变量的下标
数组的一个主要特点是通过下标(相当于索引)来引用 数组元素
例如计算这100个学生成绩的平均分,可用: s=o
For k二0 To 99 S = S + t(k) Next k
'累加分数'求平均分Aver二S/100
'累加分数
'求平均分
数组是一组按一定顺序排列的数据的集合
例如,学生成绩T =[t(0), t(l),???t(99)]是一个数组 三元一次方程组的系数矩阵
A= a21a
A= a21
a31 a31 a33 J
也是一个数组
数组名(不能与简单变量同名);数组类型
数组名(不能与简单变量同名);数组类型
又称有序的变量 下标变量 默认情况下,下标从0开始
例如,由一行共5个元素组成的数组x,它的5个下标变 量为:
x(0) x(l) x(2) x(3) x(4)
由三行四列元素组成的数组y,它的12个下标变量可表
示为:
y(0,0) y(O,l) y(l,
y(0,0) y(O,l) y(l,O) y(l,l) y(2,0) y(2,l)
y(0,2) y(0,3)
y(l,2) y(l,3)
y(2,2) y(2,3)
下标变量与简单变量具有基本相同的性质和作用
j -^4
j -^4
下标用来标明该下标变量在数组中的位置
下标可以是常数值,也可以是变量(包括下标变 量)或数值表达式
例如:
若x⑵=10, k=2,贝[Jy(x(2))就是y(10), y(x(2)+k)就是y(12)
只要有规则地改变下标值,就可以很方便地使下标变量
(如a(i))成为所需要的具体下标变量
¥
数组的维数*
数组的维数
6. 2数组的声明和应用
6.2.1数组声明语句
使用数组之前,一般需要定义数组,以便让系统分配相应 的存储单元。格式为:
Dim数组名([下界1 to]上界1[,[下界2 to]上界 2…])[As数据类型]
功能:指定数组的维数、各维的上下界和数据类型
举例:
Dim Sum(10) As Long 。下标号从o?io,共11个元素
Dim Ary(l to 20) As Integer 汴标号从i?20,共20个元素
Dim d(l to 54 to 10) As Double 定义二维数组
还可以使用Public > Static> Private等语句来声明数组
设定下界的方法
Option Base 1 “设定下界为1
Dim Data(10) As Single “下标号从 1 ?10
6.2.2 Array 函数
使用Array函数可以为数组元素赋值
示例
Dim D As V ariant 淀义数组名(变体类型)
D = Ait町(1,2, 3, 4)
执行结果:l-D(O), 2tD(1),3—D⑵,4tD⑶
6.2.3数组的应用
例6?1输入某小组5个同学的成绩,计算总分和 平均分(取小数后一位)
本例利ffllnputBox函数来输入成绩,输入完毕后 经过计算,再采用Print直接在窗体上输出结果
*
Private Sub Form_Load()
Dim d(5) As Integer
Dim i As Integer, total As Single,average As Single
Show
For i = 1 To 5 ,输入成绩
d(i) = Val(InputBox(H请输入第"& Str(i) & _ ”个学生的成绩”输入成绩”))
Next i
total = 0
For i = 1 To 5 ,计算总分和平均分
total = total + d(i)
Next i
average = total / 5
Print "总分:'* & total
Print "平均分:'* & Format (average,
End Sub
程序中,先通过Dim语句为数组d定义维数及下 标范围,也即为数组安排一块连续的内存存储区, 但这并不意味着内存里该数组已建立了应有的内容
本例中输入数组中的数据是由InputBox函数来 实现的,共循环了五次,输入的五个数依次赋值
文档评论(0)