第5章数组
第5章 数 组
目录 静态数组 动态数组 ■数组的基本操作 ■排序算法 ■控件数组
目录 ◼ 静态数组 ◼ 动态数组 ◼ 数组的基本操作 ◼ 排序算法 ◼ 控件数组
程序中使用数组的必要性: 例如要同时保存100名的成绩,并求出最高分 和平均分,使用用单个的变量markl,mark2,., 是难以忍受的。 数组的分类: 1、静态数组、动态数组 2、一维数组、多维数组
程序中使用数组的必要性: 例如要同时保存100名的成绩,并求出最高分 和平均分,使用用单个的变量mark1,mark2,., 是难以忍受的。 数组的分类: 1、静态数组、动态数组 2、一维数组、多维数组
一、静态数组 1.一维数组 下标个数为1。 声明形式: Dim数组名(下标)As类型] 下标的形式:下界To]上界
一、静态数组 1. 一维数组 下标个数为1。 声明形式: Dim 数组名(下标) [As 类型] 下标的形式:[下界 To] 上界
例: Dim mark(1 To 100)As Integer 包含的元素有: mark(1),mark(2),mark(3),.,mark(100) 分配的内存空间: mark(1) mark(2) mark(3) mark(99) mark(100) 意义:可用来分别表示100名学生的成绩
例: Dim mark(1 To 100) As Integer 包含的元素有: mark(1), mark(2), mark(3),., mark(100) mark(1) mark(2) mark(3) . mark(99) mark(100) 分配的内存空间: 意义:可用来分别表示100名学生的成绩
计算平均分的程序段如下: aver-0 For i=1 to 100 aver-aver+mark(i) Next i aver-aver/100
计算平均分的程序段如下: aver=0 For i=1 to 100 aver=aver+mark(i) Next i aver=aver/100
问题:下面代码中两处的x(10)有 何区别? Dim x(10)As Integer x(10)=100 声明时:数组下标必须是常数的形式 使用时:元素下标可以是表达式的形式, x①,i=0~10。 例5.1:斐波那契数列
问题:下面代码中两处的x(10)有 何区别? Dim x(10) As Integer x(10)=100 声明时:数组下标必须是常数的形式 使用时:元素下标可以是表达式的形式, x(i),i=0~10。 例5.1:斐波那契数列
多狂双组 下标个数2个以上。 声明形式: Dim数组名(下标lL,下标2.])[As类型]
2. 多维数组 下标个数2个以上。 声明形式: Dim 数组名(下标1[, 下标2.]) [As 类型]
例: Dim mark(1 To 5,1 To 100)As Integer Dim IArray(0 To 3,0 To 4)As Long 或者, Dim IArray(3,4)As Long 下标的下界默认从0开始
例: Dim mark(1 To 5, 1 To 100) As Integer Dim lArray(0 To 3, 0 To 4) As Long 或者, Dim lArray(3, 4) As Long 下标的下界默认从0开始
列 IArray(0,0) IArray(0,1) IArray(0,2)IArray(0,3)IArray(0,4) IArray(1,0) IArray(1,1) IArray(1,2) IArray(1,3)IArray(1,4) 行 IArray(2,0) IArray(2,1) IArray(2,2)IArray(2,3) IArray(2,4) IArray(3,0) IArray(3,1)IArray(3,2) IArray(3,3) IArray(3,4) 双重循环
lArray(0,0) lArray(0,1) lArray(0,2) lArray(0,3) lArray(0,4) lArray(1,0) lArray(1,1) lArray(1,2) lArray(1,3) lArray(1,4) lArray(2,0) lArray(2,1) lArray(2,2) lArray(2,3) lArray(2,4) lArray(3,0) lArray(3,1) lArray(3,2) lArray(3,3) lArray(3,4) 行 列 双重循环