详细介绍VB编程中的数组

数组是在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的形式组织起来的一种形式。这些按序排列的同类数据元素的集合称为数组。

创新互联专业为企业提供左贡网站建设、左贡做网站、左贡网站设计、左贡网站制作等企业网站建设、网页设计与制作、左贡企业网站模板建站服务,10余年左贡做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

在C语言中, 数组属于构造数据类型。一个数组可以分解为多个数组元素,这些数组元素可以是基本数据类型或是构造类型。因此按数组元素的类型不同,数组又可分为数值数组、字符数组、指针数组、结构数组等各种类别。下面主要介绍VB中的数组。

1、数组的概念

(1) 引例

若我们要求一个班60个学生的平均成绩,然后统计高于平均分的人数。按以前简单变量的使用和循环结构相结合,求平均成绩程序段如下:

 
 
 
  1. Dim ave As Single, sum As Single, mark As Single 
  2. Dim i As Integer 
  3. ave = 0  
  4. sum = 0  
  5.  
  6. For i = 1 To 6  
  7. mark = InputBox("输入第" & i & "个学生的成绩")  
  8. sum = sum + mark  
  9. Next 
  10. ave = sum / 6  
  11. Print "平均分是:"; ave 

但若要统计高于平均分的人数,则无法实现。mark是一个简单变量,存放的是最后一个学生的成绩。已有知识解决方法:再重复输入成绩,带来两个问题:

(1)输入数据的工作量成倍增加;

(2)若本次输入的成绩与上次不同,则统计的结果不正确。

解决此问题的根本方法,引入数组,始终保持输入的数据,一次输入,多次使用。

(2)数组的概念

数组就是把有限个类型相同的变量用同一个名字命名,然后用编号区分它们的变量的集合。这个名字称为数组名,编号称为下标。组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。

在引例中,可以定义一个数组mark(1 to 60),记录60个学生的成绩,如果第一个学生的成绩是90分,则mark(1)=90;如果第2个学生的成绩为80分,则mark(2)=80,第60个学生的成绩为96分,则mark(60)=96,依此类推。

2、数组的定义。

声明数组的一般格式如下:

Dim 数组名([下界 to ] 上界 [,[下界 to ] 上界…])As 数据类型

对于VB的数组,表示数组元素时应注意:

① 下标要紧跟在数组名后,而且用圆括号括起来(不能用其他括号);

② 数组名的命名与变量名的命名规则相同;

③ 下标可以是常量、变量或表达式,但其值必须是整数(如果是小数将四舍五入为整数);

④ 数组中可以存储数据的个数是由下标的下界和上界决定的,当下界省略时,默认的下界值为0。

 
 
 
  1. Dim x(10 to 20) As Integer ‘下标范围是10~20,可保存11个数据  
  2. Dim y(1 to 20) As Integer ‘下标范围是1~20,可保存20个数据  
  3. Dim z(20) As String ‘下标范围是0~20,可保存21个数据 

⑤ 通过指定数组名和下标来使用数组中的元素,下标可以是一个表达式。例如:

 
 
 
  1. x(10)=100  
  2. x(11)=150  
  3. z(1)=“Visual Basic”  
  4. i=10  
  5. y(i+5)=30 

⑥ 在同一数组中,数组变量的类型必须是声明时指定的数据类型。下面的情形是不允许的:x(10)= “Visual Basic”
但是,因为把一个数值赋给一个字符串类型的变量时,系统会自动进行类型转换,所以下面的语名是允许的:z(2)=100

⑦ 如果数组只有一个下标则称为一维数组,但有许多场合一个下标是不够的。例口,在电影院确定位置,要有行数和位数(如第3行8号),如果要用一个数组来记录这种位置就得有两个下标。 如:

 
 
 
  1. Dim x(1 to 20,1 to 30) As Integer 

有几个下标的数组就称为几维数组(VB最多允许60维)。

⑧ 数组应该在使用前定义。定义数组用“Dim”语句。例如:

 
 
 
  1. Dim Cscore(1 to 40) As Single, K(20,30) As Long 

这个Dim浯句定义了两个数组。数组Cscore足Single类型的一维数组,有40个分量,下标的下界是1,上界是40。而数组K(20,30)是Long型的二维数组,下标省略了下界(对省略下界的情况VB自动用0做下界),它的第一维的下标范围是0—20,第二维的下标范围是0—30,数组K有2l x 31=651个分量。
 
⑨ 对于预先不能确定数组元素个数情形,可以使用动态数组。声明一个动态数组的方法是:在声明数组时不指定下标范围,当明确下标范围时,用ReDim语句再次声明该数组。例如:

 
 
 
  1. Dim x() As Integer ‘声明数组时不指定下标范围 

当数组x的元素明确后(例如20个),则用ReDim语句声明如下:

 
 
 
  1. ReDim x(20) 

如果动态数组的元素个数需要多次改变,可以多次应用ReDim语句。为了保留数组中原有的数据,必须在使用ReDim语句时使用Preserve关键字。例如要把数组x的元素个数改为30,并保留原来的20个元素中的数据,声明语句如下:

 
 
 
  1. ReDim Preserve x(30) 

由于第一次用Dim语句声明数组时已经指定了数组的类型,因此不能在ReDim语句中再次用As关键字来指定数组的类型。

3、数组元素的输入和输出。

数组元素往往有很多,因此输入和输出有时需要用一些比较特殊的方法。

数组元素的输入,可以使用赋值语句、文本框、InputBox函数等等。

数组元素输出时,一般可以考虑两种方法:

①用PRINT方法直接输出到窗体,但当数据量大时难以实现数据的滚动;

②使用控件,如标签、文本框等,并且设置滚动条。

4、数组的应用

判断程序运行结果

 
 
 
  1. Private Sub Command1_Click()  
  2. Dim i As Integer 
  3. Dim a(1 To 10) As Integer 
  4. For i = 1 To 10  
  5. a(i) = 2 * i + 1  
  6. Next i  
  7. For i = 1 To 5  
  8. Print a(2 * i - 1);  
  9. Next i  
  10. End Sub 

希望通过本文的介绍,可以对初学者有帮助。

标题名称:详细介绍VB编程中的数组
URL网址:http://www.shufengxianlan.com/qtweb/news3/309453.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联