vb计算机二级考试
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
大的数;
3)依次类推,n个数共进行n-1趟比较,在第j
趟中要进行n-j次两两比较。
2021/2/21
15
2021/2/21
16
冒泡法排序(升序)的VB程序:
For i = 1 To n - 1 For j = 1 To n-i If a(j) > a(j+1) Then temp=a(j) a(j)=a(j+1) a(j+1)=temp End if Next j
For i =1 To 10\2
t=A(i)
A(i)=A(10-i+1)
A(10-i+1)=t
ຫໍສະໝຸດ Baidu
Next I
2021/2/21
例5.1
10
5.2.4 一维数组的应用
一、分类统计
例5.2 在例5.1中如果还要统计0~9,10~19,20~20,….80~89, 90~99分数段及100分的学生人。
则可另用数组bn来存各分数段的人数,并用bn(0)存 0~9分的人数,bn(1)存10~19分的人数,…bn(9)存90~99分 的人数,bn(10)存100分的人数。
vb计算机二级考试
2021/2/21
1
第五章 数组和自定义类型
5.1 概 述
数组的概念:数组并不是一种数据类型,而 是一组相同类型数据的集合。用一个统一的名字 (数组名)代表逻辑上相关的一批数据,每个元 素用下标变量来区分;下标变量代表元素在数组 中的位置。
其表示形式:
A(1),A(10)
X(1,1), X1(1,10), X(2,10)
2021/2/21
9
4. 求数组中最大元素及所在下标 Dim Max As Integer,iMax As Integer Max=A(1):iMax=1 For i = 2 To 10 If A(i)>Max Then Max=A(i) iMax=i End If Next I
5. 将数组元素倒置
14
2.冒泡法排序(递增)
算法思想:(将相邻两个数比较,小的调到前头)
1)有n个数(存放在数组a(n)中),第一趟将
每相邻两个数比较,小的调到前头,经n-1次两两
相邻比较后,最大的数已“沉底”,放在最后一
个位置,小数上升“浮起”;
2)第二趟对余下的n-1个数(最大的数已“沉
底”)按上法比较,经n-2次两两相邻比较后得次
B(i+1)=A(i+2)
' 下标使用表达式
引用不能下标越界,P113例
2021/2/21
7
5.2.3 一维数组的基本操作
1. 可通过循环给数组元素的初值 For i = 1 To 10 A(i)=1 Next i
'A数组的每个元素值为1
2. 数组的输入 For i = 1 To 4 For j = 1 To 5 sc(i, j) = InputBox("输入sc(" &i & "," & j & ") 的值") Next j Next I
2021/2/21
6
5.2.2 一维数组元素的引用
数组必须先定义后使用
使用形式: 数组名(下标)
其中:下标可以是整型变量、常量或表达式。
例如: 设有下面的数组B(10) As Integer
则下面的语句都是正确的。
A(1)=A(2)+B(1)+5
' 取数组元素运算
A(i)=B(i)
' 下标使用变量
2021/2/21
12
原 始 数 据 869327 第 1趟 交 换 后 2 6 9 3 8 7 第 2趟 交 换 后 2 3 9 6 8 7 第 3趟 交 换 后 2 3 6 9 8 7 第 4趟 交 换 后 2 3 6 7 8 9 第 5趟 无 交 换 2 3 6 7 8 9
图 1 -3 -2 7 交 换 过 程
Option Base 1 ' 将数组声明中缺省<下界>下标设为1 4.<下界>和<上界>不能使用变量,必须是常量,常量可 以是直接常量、符号常量,一般是整型常量。
2021/2/21
5
5.如果省略As子句,则数组的类型为变体类型。 6.数组中各元素在内存占一片连续的存储空间, 一维数组在内存中存放的顺序是下标大小的顺序, 如图5-1所示:
Y(0,0,0), Y(1,2,5)
2021/2/21
2
Visual Basic中的数组,按不同的方式可分为 以下几类: ➢按数组的大小(元素个数)是否可以改变来 分为:定长数组、动态(可变长)数组。 ➢按元素的数据类型可分为:数值型数组、字 符串数组、日期型数组、变体数组等。 ➢按数组的维数可分为:一维数组、二维数组、 多维数组。 ➢对象数组:菜单对象数组、控件数组。
2021/2/21
3
5.2 一维数组
5.2.1 一维数组的声明 (无隐式声明)
形式:
Dim 数组名([<下界>to]<上界>)[As <数据类型>]
或: Dim 数组名[<数据类型符>]([<下界>to]<上界>)
例:Dim a(1 to 10) As Integer
‘ 声明了a数组有10个元素
数组元数的数据类型 1是下标的下界 10是下标的上界
2021/2/21
8
3. 数组的输出
输出如下图所示的下三角数据
Dim sc(5,5) As Integer,i%,j% For i = 1 To 5
For j = 1 To i sc(i, j) = i * 5 + j Print sc(i, j); " ";
Next j Print ' 换行 Next I
2021/2/21
13
选择法排序(升序)的VB程序:
For i = 1 To n - 1 p=i For j = i + 1 To n If a(p) > a(j) Then p = j Next j temp = a(i) a(i) = a(p) a(p) = temp
Next i
2021/2/21
2021/2/21
11
二、 排序问题
1.选择法排序 算法思想:
1)对有n个数的序列(存放在数组a(n)中),从中选出 最小(升序)或最大(降序)的数,与第1个数交换位置;
2)除第1 个数外,其余n-1个数中选最小或最大的数, 与第2个数交换位置;
3)依次类推,选择了n-1次后,这个数列已按升序排列。
与上面声明等价形式: Dim a%(1 to 10)
2021/2/21
4
说明:
1.数组名的命名规则与变量的命名相同。
2.数组的元素个数:上界-下界+1。
3.缺省<下界>为0,若希望下标从1开始,可在模块的通 用部分使用Option Base语句将设为1。其使用格式是:
Option Base 0|1 ' 后面的参数只能取0或1 例如: