【VB开源代码栏目提醒】:本文主要为网学会员提供“VB程序设计5-数组 - 编程语言”,希望对需要VB程序设计5-数组 - 编程语言网友有所帮助,学习一下!
5.1 数组的定义??同类变量的一个有序集合。
??数组中的变量称为数组元素。
??数组的表示–数组名s1s2…–其中s1s2…表示该元素在数组中的位置即下标。
–只有一个下标的叫一维数组两个下标的叫二维数组…。
–下标必须为整数–下标的范围下界—上界数组命名与数组元素??数组在使用前必须定义。
??两种类型固定大小数组动态数组??定义形式Public/Private/Static/Dim数组名下标As 数据类型??数据类型缺省为Variant类型。
??数组也分局部、窗体和全局三个作用域。
??下标必须为常量数值常量或符号常量不能为变量该变量已经被赋值也不能。
数组定义Const N5Dim AN As Integer 对Dim N As IntegerDim AN As Integer 错Dim a13 As Integer 窗体级数组只在该窗体模块内有效Public b13 As Integer 出错只能用在标准模块的通用说明部分Private c13 As Integer 窗体级数组只在该窗体模块内有效Static d13 As Integer 出错Private SubCommand1_ClickDim a23 As Integer 定义过程级数组只在该过程内有效Public b23 As Integer 出错Private c23 As Integer 出错Static d23 As Integer 定义静态数组只在该过程内有效End SubDim a33 As Integer 模块级数组只在该模块有效Public b33 As Integer 全局数组在整个工程内有效Private c33 As Integer 模块级数组只在该模块有效Static d33 As Integer 出错Public/PrivateSubFunDim a43 As Integer 过程级数组只在该通用过程内有效Public b43 As Integer 出错Private c43 As Integer 出错Static d43 As Integer 定义静态数组只在该通用过程内有效End Sub常量、变量、数组的说明总结窗体模块标准模块通用说明过程通用说明过程常量Const√√√√Public Const××√×Private Const√×√×变量Dim√√√√Public√注×√×Private√×√×Static×√×√数组Dim√√√√Public××√×Private√×√×Static×√×√请记住1、不管是说明常量、变量还是数组Public和Private不能用在过程中Static不能用在通用说明部分。
2、在窗体模块中不能定义公有常量、公有定长字符串变量和公有数组。
Dim A6 As Integer 等价于Dim A0 To 6 As IntegerA0A1A2A3A4A5A6Private Name1999 To 2002 As String 8Name1999Name2000Name2001Name2002Dim B1 To 6.6 As Integer 等价于Dim B1 To 7 As Integer Dim C1 To 23 As Integer 等价于Dim C1 To 6 As Integer B01B02B11B12B21B22Dim B21 To 2 As Integer 等价于Dim B0 To 21 To 2 As Integer Dim B123 As Integer ??必须位于模块的通用部分。
??Option Base 1将数组下标的缺省下界设置为1Option Base语句数组的大小数组的大小第1维大小×第2维大小×…×第N维大小维的大小维上界维下界1??一维数组线性顺序。
??二维数组由行和列组成的一张二维表。
经
常用二维数组表示数学中的矩阵。
??三维数组由行、列和页组成的三维表。
数组的结构??LBound函数LBoundanamed 返回数组某维的维下界的值。
??UBound函数UBoundanamed返回数组某维的维上界的值。
??Erase语句Erase a1a2…重新初始化固定大小数组的元素或者释放动态数组的存储空间。
??For Each-Next结构语句For Each Element In /语句组Exit For语句组Next Element数组函数及数组语句1. 用赋值语句2. 用循环语句3. 用InputBox函数4. 用Array函数给一维数组赋值变体变量名Array数据列表不可以用Array函数给非Variant类型的变量赋值。
5.数组赋值6. 通过文本框给数组元素赋值数组的基本操作数组元素的赋值利用循环控制数组元素的输出数组元素的输出本例中数组元素Aij产生的顺序A11 11A12 12A13 13A14 14A15 15A21 20A22 19A23 18A24 17A25 16A31 21A32 22A33 23A34 24A35 25A41 30A42 29A43 28A44 27A45 26数组元素的引用123456789101112Compare数组MaxMin求若干个数中的最大数和最小数的算法思想P97动态数组??固定大小数组指定了数组的维数和下标在使用过程中不得改变。
??动态数组声明时不指明维数和下标在使用时可利用ReDim重新定义。
ReDim Preserve 数组名下标As 数据类型若使用Preserve选项则1.保留原数组中的所有内容。
2.保留维的大小最末维除外3.保留维数。
动态数组的声明和重定义声明Dim 数组名 As 数据类型重定义ReDim preserve 数组名下标例Dim A As Integer……ReDim A5……ReDim Preserve A10……??可以使用ReDim 语句反复地改变数组的元素以及维数的数目但是不能在将一个数组定义为某种数据类型之后再使用ReDim 将该数组改为其它数据类型。
??如果使用了Preserve关键字就只能重定义数组最末维的大小不能改变维数的数目。
注意??控件数组是由一组具有共同名称和相同类型的控件组成数组中的每一个控件共享同样的事件过程。
??控件数组