- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第5讲 数组
5.1 数组
5.1.1数组的概念
数组不是一种数据类型,而是一组相同类型的变量的集合。
数组必须先声明后使用,用声明语句声明数组时要声明:
5.1.2 定长数组及声明
1. 一维数组
Dim 数组名(下标上界) [As 类型]
Dim 数组名(下标下界 To 上界) [As 类型]
下标必须为常数,不能是表达式或变量;下标下界默认为0;一维数组的大小为:“上界-下界+1”
Dim mark(99) As Integer
Const N=10 ‘声明一个符号常量N;
Dim s!( N ) ‘用符号常量代表下标
2.多维数组
Dim 数组名(下标1,下标2…) [As 类型]
下标个数决定了数组的维数;每一维的大小=上界-下界+1;其大小为各维大小的乘积。
5.1.3 动态数组及声明
建立动态数组分两步:
(1)用Dim 语句声明数组,但不能指定数组大小
Dim 数组名( ) As 数据类型
(2)在过程中用ReDim语句动态地分配元素个数
ReDim 数组名 (下标[,下标2…])
定义动态数组大小注意:
Dim说明语句,可出现在程序的任何地方。
而ReDim 是执行语句,只能出现在过程代码中。Redim语句中的下标可以是常量,也可以是已赋值的变量。
过程中可多次使用ReDim语句来改变数组的大小,但每次使用都会使数组中原有数据丢失。
可在ReDim 后加Preserve参数用来保留数组中的数据,若使用Preserve参数后,只能改变最后一维的大小。
5.2 数组的基本操作
与数组相关的函数和设置
(1)Array函数
变量名=Array(常量数据列表)
Aarry函数将常量列表的各项值分别赋给一个一维数组。
变量名必须声明为Variant的变体类型,可以是变体变量名和变体动态数组名。
数组大小由数据列表中的常数个数确定。
Array 函数作用返回一个Variant型的数组。
Dim a As Variant, b( )
(2) UBound()、下界LBound()函数
UBound( )函数和LBound( )函数分别用来确定数组某一维的上界和下界值。形式如下:
UBound | LBound (数组名[, N])
例:k = Ubound ( a , 1 ) ;k = UBound ( a )
(3) Option Base 语句
用来声明数组下标的缺省下界。
语法:Option Base {0 | 1}
该语句必须出现在模块的所有过程之前。一个模块中只能出现一次 Option Base。
2. 数组的输入
(1)在循环中用InputBox函数输入数据赋予数组元素
Option Base 1
Private Sub Form_Load( )
Dim s(20) As Integer
For i = 1 To 20
s(i) = InputBox(“输入第” I “个数据)
Next I
End Sub
(2)循环和随机数函数给数组赋值
用循环给数组赋值
For i = 1 to n
x(i) = i
next i
用随机数函数产生随机数给数组赋值
For i = 1 to n
y(i) = Rnd*71+120
next i
(3)二维数组的数组元素赋值
例如:Dim A(1 To 6, 1 To 7)
① 以行的方式赋值
For K = 1 To 6
For J = 1 To 7
A (K , J) = Int (Rnd * 91 + 20)
Next J
Next K
② 以列的方式赋值
For K = 1 To 7
For J = 1 To 6
A (J , K) = Int (Rnd * 91 + 20)
Next J
Next K
3.数组的输出
(1)窗体或图形控件每行输出一个数据。
For K = 1 To N
窗体或图形控件名.Print K,A(K)
Next K
(2)文本和标签控件每行输出一个数据(文本控件必须设置多行属性)
For K = 1 To 100
s1 = s1 B(K) vbCrLf 或 s1 = s1 B(K) Chr(10) Chr(13)
Next K
标签控件名.Caption = s1 或 文本控件名.Text = s1
(3)窗体和图形控件的分行
文档评论(0)