1 / 64
文档名称:

第6章 数组.ppt

格式:ppt   页数:64
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

第6章 数组.ppt

上传人:中国课件站 2011/10/11 文件大小:0 KB

下载得到文件列表

第6章 数组.ppt

文档介绍

文档介绍:本章主要内容
数组的概念
静态数组和动态数组
声明数组
数组的基本操作
使用数组的实例
控件数组
记录类型和枚举类型
第6章数组
数组与数组元素
简单变量用一个变量名标识,不同的变量使用不同的变量名表示。处理成批的数据时,必须使用数组来处理表示100个学生的成绩,采用简单变量来表示:
s1,s2,s3,… s99,s100 采用数组来表示:E(0), E(1), E(2),… E(98), E(99)
E(k) (k=0,1,2,…99)为数组元素(或称下标变量),它表示第k个学生的成绩, k称为下标变量的下标
数组的一个主要特点是通过下标(相当于索引)来引用数组元素
数组的概念
例如计算这100个学生成绩的平均分,如果不用数组而用简单变量,就必须用语句:
s=s1+s2+s3+s4+s5+…+s98+s99+s100:Aver=s/100
如果用数组,可以用如下循环语句: S=0 For k=0 To 99 S = S + E(k) ‘累加分数 Next k Aver=S/100 ‘求平均分
这里就使用了数组E,利用数组E内所包含的数组元素(有100个下标变量),可以存放100个学生的成绩,求和后就可以算出平均分。
数组是一组按一定顺序排列的数据的集合。 例如,学生成绩T=[E(0), E(1), … E(99)] 是一个数组。 三元一次方程组的系数矩阵
a11 a12 a13 A= a21 a22 a23 a31 a31 a33 也是一个数组
 注意:
数组名(不能与简单变量同名);
和简单变量一样有不同的数据类型;
数组元素:它是有序的变量也称为下标变量。 默认情况下,下标从0开始。
 例如,由一行共5个元素组成的数组x,它的5个下标变量为: x(0) x(1) x(2) x(3) x(4) 由三行四列元素组成的数组y,它的12个下标变量可表示为: y(0,0) y(0,1) y(0,2) y(0,3) y(1,0) y(1,1) y(1,2) y(1,3) y(2,0) y(2,1) y(2,2) y(2,3)
下标变量与简单变量具有基本相同的性质和作用。
数组元素
下标用来标明该下标变量在数组中的位置
下标可以是常数值,也可以是变量(包括下标变量)或数值表达式。 例如:
若x(2)=10, k=2,则y(x(2))就是y(10), y(x(2)+k)就是y(12) 只要有规则地改变下标值,就可以很方便地使下标变量成为所需要的具体下标变量, 如a(i)中的下标i的改变。 数组的维数:下标的个数决定数组的维数,各维下标之间用逗号分开。例如:
E(i)、y(i,j)和v(i,j,k)分别是1维、2维和3维数组。
下标和数组的维数
例:声明一个二维数组用于存放一个班(30个同学,5门课程)的考试成绩:
Option Base 1 ‘改变默认的下标的下界为1.
dim a(30,5) as integer ‘a(30,5)的大小为30×5个元素
注意:在用上述格式声明固定大小的数组时,指定的上下界只能用常量不能用变量。下列的声明语句都是错误的:
dim a(n) as integer
dim a(1 to m) as single

使用数组之前,一般需要定义数组,以便让系统分配相应的存储单元。格式为:
Dim 数组名([下界1 to]上界1[,[下界2 to]上界2…])[As 数据类型] 功能:指定数组的维数、各维的上下界和数据类型
在声明数组时,就给定了数组元素个数(即指导了数组的维数、各维的上下界)的数组称为静态数组。
举例: Dim Sum(10) As Long ‘下标号从0~10,共11个元素 Dim Ary(1 to 20) As Integer ‘下标号从1~20,共20个元素 Dim d(1 to 5,1 to 10) As Double ‘定义二维数组
还可以使用Public、Static、Private等语句来声明数组
静态数组和动态数组
设定下界的方法 Option Base 1 ‘设定下界为1 Dim Data(10) As Single ‘下标号从1~10
如果不用Option Base 1 语句,则系统默认的下标下界是0。
请分别说明以下几个数组的类型和数组元素的个数:
a(200) as Integer
b(6,20) as Single
c(1 to 6,2 to 10) as Long
d(1 to 40) as String
e(-4 to 30) as