51CTO旗下网站
详细介绍VB编程中的数组
前面几篇给大家分享了JAVA中的数组的一些知识,本文为大家介绍VB中的数组,希望对你有帮助,一起来看。
作者:Web Collector来源:百度空间| 16:05
数组是在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的形式组织起来的一种形式。这些按序排列的同类数据元素的集合称为数组。
在C语言中, 数组属于构造数据类型。一个数组可以分解为多个数组元素,这些数组元素可以是基本数据类型或是构造类型。因此按数组元素的类型不同,数组又可分为数值数组、字符数组、指针数组、结构数组等各种类别。下面主要介绍VB中的数组。
1、数组的概念
(1) 引例
若我们要求一个班60个学生的平均成绩,然后统计高于平均分的人数。按以前简单变量的使用和循环结构相结合,求平均成绩程序段如下:
Dim&ave&As&Single,&sum&As&Single,&mark&As&Single&Dim&i&As&Integer&ave&=&0 &sum&=&0 &&For&i&=&1&To&6 &mark&=&InputBox(&输入第&&&&i&&&&个学生的成绩&) &sum&=&sum&+&mark &Next&ave&=&sum&/&6 &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。
Dim&x(10&to&20)&As&Integer&&下标范围是10~20,可保存11个数据 &Dim&y(1&to&20)&As&Integer&&下标范围是1~20,可保存20个数据 &Dim&z(20)&As&String&&下标范围是0~20,可保存21个数据&
⑤ 通过指定数组名和下标来使用数组中的元素,下标可以是一个表达式。例如:
x(10)=100 &x(11)=150 &z(1)=&Visual&Basic& &i=10 &y(i+5)=30&
⑥ 在同一数组中,数组变量的类型必须是声明时指定的数据类型。下面的情形是不允许的:x(10)= &Visual Basic&
但是,因为把一个数值赋给一个字符串类型的变量时,系统会自动进行类型转换,所以下面的语名是允许的:z(2)=100
⑦ 如果数组只有一个下标则称为一维数组,但有许多场合一个下标是不够的。例口,在电影院确定位置,要有行数和位数(如第3行8号),如果要用一个数组来记录这种位置就得有两个下标。 如:
Dim&x(1&to&20,1&to&30)&As&Integer&
有几个下标的数组就称为几维数组(VB最多允许60维)。
⑧ 数组应该在使用前定义。定义数组用&Dim&语句。例如:
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语句再次声明该数组。例如:
Dim&x()&As&Integer&&声明数组时不指定下标范围&
当数组x的元素明确后(例如20个),则用ReDim语句声明如下:
ReDim&x(20)&
如果动态数组的元素个数需要多次改变,可以多次应用ReDim语句。为了保留数组中原有的数据,必须在使用ReDim语句时使用Preserve关键字。例如要把数组x的元素个数改为30,并保留原来的20个元素中的数据,声明语句如下:
ReDim&Preserve&x(30)&
由于第一次用Dim语句声明数组时已经指定了数组的类型,因此不能在ReDim语句中再次用As关键字来指定数组的类型。
3、数组元素的输入和输出。
数组元素往往有很多,因此输入和输出有时需要用一些比较特殊的方法。
数组元素的输入,可以使用赋值语句、文本框、InputBox函数等等。
数组元素输出时,一般可以考虑两种方法:
①用PRINT方法直接输出到窗体,但当数据量大时难以实现数据的滚动;
②使用控件,如标签、文本框等,并且设置滚动条。
4、数组的应用
判断程序运行结果
Private&Sub&Command1_Click() &Dim&i&As&Integer&Dim&a(1&To&10)&As&Integer&For&i&=&1&To&10 &a(i)&=&2&*&i&+&1 &Next&i &For&i&=&1&To&5 &Print&a(2&*&i&-&1); &Next&i &End&Sub&
希望通过本文的介绍,可以对初学者有帮助。
【编辑推荐】
【责任编辑: TEL:(010)】
大家都在看猜你喜欢
头条头条关注热点热点
24H热文一周话题本月最赞
讲师:245283人学习过
讲师:108841人学习过
讲师:16340人学习过
精选博文论坛热帖下载排行
《设计模式:可复用面向对象软件的基础》(双语版)是引导读者走入软件设计迷宫的指路明灯,凝聚了软件开发界几十年的设计经验。四位顶尖的...
订阅51CTO邮刊2012年计算机二级VB数组和自定义类型练习题及答案
来源:中华网考试 更新时间:
数组和自定义类型
一、 单选题
1. 下面数组声明语句,_________正确。
A) Dim a[2,4] As Integer
B) Dim a(2,4) As Integer
C) Dim a(n,n) As Integer
D) Dim a(2 4) As Integer
2.要分配存放如下方阵的数据,可使用________数组声明语句来实现(不能浪费空间)。
A) Dim x(9) As Single
B) Dim x(3,3) As Single
C) Dim x(-1 to 1, -5 to -3) As Single
D) Dim x(-3 to -1, 5 to 7) As Integer
3. 下面数组声明语句中,数组包含元素个数为 ________。
Dim a(-2 to 2,5)
A) 120
B) 30
C) 60
D) 20
4.下面程序的输出结果是 ________。
a = Array(1,2,3,4,5,6,7)
For i = Lbound(A) to Ubound(A)
a(i) = a(i) * a(i)
Next i
Print a(i)
A) 36
B) 程序出错
C) 49
D) 不确定
5.下面程序的输出结果是 ________。
Option Base 1
Private Sub Command1_Click()
Dim a%(3, 3)
For i = 1 To 3
For j = 1 To 3
If j & 1 And i & 1 Then
a(i, j) = a(a(i - 1, j - 1), a(i, j - 1)) + 1
a(i, j) = i * j
End If
Print a(i, j);
Next j
Next i
End Sub
A)1 2 3
B) 1 2 3
C) 1 2 3
D) 1 2 3
6.以下定义数组或给数组元素赋值的语句中,正确的是______。
A)Dim a As Variant
a = Array(1,2,3,4,5)
B)Dim a(10) As Integer
a = Array(1,2,3,4,5)
C)Dim a%(10)
a(1) = &ABCDE&
D)Dim a(3),b(3) As Integer
a(0) = 0
a(1) = 1
a(2) = 2
7.设有如下的记录类型
Type Student
number As String
name As String
age As Integer
End Type
则正确引用该记录类型变量的代码是______。
A)Student.name =&张红&
B)Dim s As Student
s.name =&张红&
C)Dim s As Type Student
s.name =&张红&
D)Dim s As Type
s.name =&张红&
8. 在窗体上画一个命令按钮(其Name属性为Command1),然后编写如下代码:
Option Base 1
Private Sub Command1_Click()
a=Array(1,2,3,4)
For i=4 To 1 Step -1
s=s+a(i)*j
j=j*10
Next i
Print s
End Sub
运行上面的程序,单击命令按钮,其输出结果是______。
A)4321
B)1234
9. 执行以下Command1的Click事件过程在窗体上显示______。
Option Base 0
Private Sub Command1_Click( )
a=Array(&a&,&b&,&c&,&d&,&e&,&f&,&g&)
Print a(1);a(3);a(5)
End Sub
A)abc
B)bdf
C)ace
D)无法输出结果
10. 在窗体上画一个名称为Command1 的命令按钮,然后编写如下事件过程:
Option Base 1
Private Sub Command1_Click()
a = Array(1, 2, 3, 4, 5)
For i = 1 To UBound(A)
a(i) = a(i) + i & 1
Print a(3)
End Sub
程序运行后,单击命令按钮,则在窗体上显示的内容是______。
编辑推荐:
2011年计算机二级VB考试冲刺模拟试题及答案
2011年计算机二级VB考试记录文件考前冲刺习题及答案
2011年计算机二级VB考试形参实参考前冲刺习题及答案
来源:教育联展网-计算机二级考试 [NextPage]
11. 窗体上画一个命令按钮,其名称为Command1,然后编写如下事件过程:
Private Sub Command1_Click()
Dim M(10), N(10)
For T = 1 To 5
M(T) = T
N(I) = 2 * I + T
Next T
Print N(I); M(I)
End Sub
窗体运行后,单击命令按钮,输出结果为______。
A)3 11
B)3 15
C)11 3
D)15 3
12.下列程序段的执行结果为______。
Dim M(10)
For I=0 To 9
M(I)=2*I
Next I
Print M(M(3))
13. 设有如下程序:
Option Base O
Prvate Sub Form_Click()
Dim i As Integer
a= Array(1,2,3,4,5,6,7,8,9)
For i=0 To 3
Print a(5 -i);
End Sub
程序运行后,单击窗体,则在窗体上显示的是______。
A)4 3 2 1
B)5 4 3 2
C)6 5 4 3
D)7 6 5 4
14. 在窗体上面画一个命令按钮,其名称为Command1,然后编写如下事件过程:
Private Sub Command1_Click()
Dim a1(4,4),a2(4,4)
For I=1 to 4
For j=1 To 4
a1(I,j)=I+j
a2(I,j)=a1(I,j)+I+j
Next j
Next I
Print a1(3,3);a2(3,3)
End Sub
程序运行后,单击命令按钮,在窗体上输出的是______。
A)6 6
B)10 5
C)7 21
D)6 12
15. 有以下程序:
Option Base 1
Dim arr() As Integer
Private Sub Form_Click()
Dim i As Integer, j As Integer
ReDim arr(3, 2)
For i=1 To 3
For j=1 To 2
arr(i,j)=i*2+j
Next j
Next i
ReDim Preserve arr(3,4)
For j=3 To 4
arr(3,j)=j+9
Next j
Print arr(3,2);arr(3,4)
End Sub
程序运行后,单击窗体,输出结果为______。
A)8 13
B)0 13
C)7 12
D)0 0
16. 在窗体上画一个命令按钮,名称为Command1,然后编写如下代码:
Option Base 0
Private Sub Command1_Click()
Dim A(4) As Integer, B(4) As Integer
For k=0 To 2
A(k+1)=InputBox(&请输入一个整数&)
B(3-k)=A(k+1)
Next k
Print B(k)
End Sub
程序运行后,单击命令按钮,在输入对话框中分别输入2、4、6,输出结果为______。
17. 在窗体上画一个命令按钮,然后编写如下事件过程:
Private Sub Command1_click()
Dim a(5)as String
For i = 1 to 5
a(i)=Chr (Asc(&A&)+(i-1))
Next i
For Each b in a
End Sub
程序运行后,单击命令按钮,输出结果是______。
A)ABCDE
B)1 2 3 4 5
C) a b c d e
D)出错信息
18. 下面叙述中不正确的是______。
A)自定义类型只能在窗体模块的通用声明段进行声明
B)自定义类型中的元素类型可以是系统提供的基本数据类型或已声明的自定义类型
C)在窗体模块中定义自定义类型时必须使用Private关键字
D)自定义类型必须在窗体模块或标准模块的通用声明段进行声明
19. 在设定Option Base 0后,经Dim arr(3,4) As Integer 定义的数组arr含有的元素个数为_____。
20. 用下面语句定义的数组的元素个数是______ 。
Dim A (-3 To 5) As Integer
[NextPage]
21. 有如下程序代码,输出结果是_____。
Dim a()
a=Array(1,2,3,4,5)
for i=Lbound(A) to Ubound(A)
print a(i);
next I
A)1 2 3 4 5
B)0 1 2 3 4
C)5 4 3 2 1
D)4 3 2 1 0
22. 窗体上已有命令按钮Command1和标签Label1,下列程序运行后,单击Command1按钮,标签Label1中显示的内容是_____。
Option base 0
Private Sub Command1_Click()
Dim a(5) As Integer, n As Integer
For i = 1 To 5
a(i) = i
n = n + a(i)
Next i
Label1 = n
End Sub
D)程序报错,Label1不能输出结果
23. 在窗体上画一个名称为Label1的标签,然后编写如下事件过程_____。
Private Sub Form_Click()
Dim arr(10, 10) As Integer
Dim i As Integer, j As Integer
For i = 2 To 4
For j = 2 To 4
arr(i, j) = i * j
Next j
Next i
Label1.Caption = Str(arr(2, 2) + arr(3, 3))
End Sub
程序运行后,单击窗体,在标签中显示的内容是_____。
24. 设有如下程序,其功能是用Array函数建立一个含有8个元素的数组,然后查找并输出该数组中的最小值,请选择程序中空处应为_____。
Option Base 1
Private Sub Command1_Click()
Dim arr1
Dim Min As Integer, i As Integer
arr1 = Array(12, 435, 76, -24, 78, 54, 866, 43)
Min = _____
For i = 2 To 8
If arr1(i) & Min Then Min=arr1(i)
Next i
Print &最小值是:&; Min
End Sub
A)-24
B)886
C)arr1(1)
D)arr1(0)
25. 以下程序的输出结果是_____。
Option Base 1
Private Sub Command1_Click()
Dim a(10),p(3) As Integer
For i=1 To 10
a(i)=I
Next i
For i=1 To 3
p(i)=a(i*i)
Next I
For i=1 To 3
k=k+p(i)*2
Next i
Print k
End sub
A) 33
B) 28
C) 35
D) 37
26. 以下程序段运行的结果是________。
Dim a(-1 To 5)As Boolean
Dim flag As Boolean
flag=false
Dim i As Integer
Dim j As Integer
Do Until flag=True
For i=-1 to 5
If a(i)=False Then
a(i)=True
Exit For
End If
If i=5 Then
flag=True
End If
Print j
27. 以下有关数组定义的语句序列中,错误的是______。
A) Static arr1(3)
Arr1(1)=100
Arr1(2)=&Hello&
Arr1(3)=123.45
B)Dim arr2() As Integer
Dim size As Integer
Private Sub Command2_Click()
size=InputBox(&输入:&)
ReDim arr2(size)
......
End Sub
C)Option Base 1
Private Sub Command3_Click()
Dim arr3() As Integer
......
End Sub
D)Dim n As Integer
Private Sub Command4_Click()
Dim arr4(n) As Integer
......
End Sub
28. 下述语句定义的数组元素有______个。
OPTION BASE 1
DIM A(12,8)
A)117
B)128
29. 下列程序段的执行结果为______。
Dim A(10,10)
For I=1 To 8
For J=6 To 8
A(I,J)=I*J
Next J
Next I
Print A(4,6)+A(3,8)+A(8,7)
A)104
B)114
C)无法输出
D)报错溢出
30. 阅读程序
Option Base 1
Private Sub Form_Click()
Dim arr, Sum
Sum = 0
arr = Array(1, 3, 5, 7, 9, 11, 13, 15, 17, 19)
For i = 1 To 10
If arr(i) / 3 = arr(i) \ 3 Then
Sum = Sum + arr(i)
End If
Next i
Print Sum
End Sub
程序运行后,单击窗体,输出结果为______。
[NextPage]
31. 在窗体上画一个名称为Text1的文本框和一个名称为Command1的命令按钮,然后编写如下事件过程:
Private Sub Command1_Click()
Dim array1(10,10) As Integer
Dim i As Integer,j As integer
For i=1 To 3
For j=2 To 4
array1(i,j)=i+j
Next j
Next i
Text1.Text=array1(2,3)+array1(3,4)
End Sub
程序运行后,单击命令按钮,在文本框中显示的值是______。
32. 窗体上画一个命令按钮,其名称为Command1,然后编写如下事件过程:
Private Sub Command1_Click()
Dim A(10), B(5)
For I = 1 To 10
A(I) = I
Next I
For J = 1 To 5
B(J) = J * 20
Next J
A(5) = B(2)
Print &A(5)=&, A(5)
End Sub
窗体运行后,单击命令按钮,输出结果是______。
A)A(5)=40
B)A(5)=20
C)A(5)=10
D)A(5)=5
33. 在窗体上画一个命令按钮,名称为Command1,然后编写如下事件过程:
Option Base 0
Private Sub Command1_Click()
Dim city As Variant
city = Array(&北京&,&上海&,&天津&,&重庆&)
Print city(1)
End Sub
程序运行后,如果单击命令按钮,则在窗体上显示的内容是______。
A)空白
B)错误提示
C)北京
D)上海
34. 窗体上画一个命令按钮,其名称为Command1,然后编写如下事件过程:
Private Sub Command1_Click()
Dim A(5, 5)
For I = 1 To 3
For J = 1 To 4
A(I, J) = I * J
Next J
Next I
For N = 1 To 2
For M = 1 To 3
Print A(M, N);
Next M
Next N
End Sub
窗体运行后,单击命令按钮,输入结果是______。
A)1 2 3 4 2 4
B)1 2 3 4 6 8
C)1 2 3 2 4 6
D)1 2 3 6 3 6
35. 设有命令按钮Command1的单击事件过程
Private Sub Command1_Click()
Dim a(3,3) AS Integer
For i=1 To 3
For j=1 To 3
a(i,j)=i*j+i
Next j
Next i
For i=1 To 3
Sum=Sum+a(i,4-i)
Next i
Print Sum
End Sub
运行程序,单击命令按钮,输出结果是______。
36. 在窗体上画一个名称为 Command1 的命令按钮,然后编写如下程序:
Option Base 1
Private Sub Command1_Click()
Dim c As Integer,d As Integer
x=Array(2,4,6,8,10,12)
For i=1 To 6
If x(i)&c Then
d=d+x(i)
End If
Next i
Print d
End Sub
程序运行后,如果单击命令按钮,则在窗体上输出的内容为______。
37. 阅读程序:
Option Base 1
Dim arr() As Integer
Private Sub Form_Click()
Dim i As Integer, j As Integer
ReDim arr(3, 2)
For i = 1 To 3
For j = 1 To 2
arr(i, j) = i * 2 + j
Next j
Next i
ReDim Preserve arr(3, 4)
For j = 3 To 4
arr(3, j) = j + 9
Next j
Print arr(3, 2) + arr(3, 4)
End Sub
程序运行后,单击窗体,输出结果为
38. 窗体中新建立一个命令按钮(Command1),其事件代码如下:
Private Sub Command1_Click()
Dim a(4) As Integer, b(4) As Integer
For K = 0 To 2
a(K + 1) = Val(InputBox(&请输入数据&))
b(3 - K) = a(K + 1)
Next K
Print b(K)
End Sub
窗体运行后,单击命令按钮,依次输入1、3、5,执行结果为______。
[NextPage] 39. 在窗体上画一个名称为Command1命令按钮,然后编写如下程序:
Private Sub Command1_Click()
Dim i As Integer,j As Integer
Dim a(10,10)As Integer
For i=1 To 3
For j=1 To 3
a(i,j)=(i-1)*3+j
Print a(i,j);
Next i
End Sub
程序运行后,单击命令按钮,窗体上显示的是______。
A)1 2 3
B)2 3 4
C)1 4 7
D)1 2 3
40. 对窗体编写如下代码:
Option Base 1
Private Sub Form_KeyPress(KeyAscii As Integer)
a=Array(237,126,87,48,498)
m1=a(1)
If KeyAscii=13 Then
For i=2 To 5
If a(i)&m1 Then
m1=a(i)
End If
Next i
End If
Print m1
Print m2
End Sub
程序运行后,按回车键,输出结果为______。
B)237
C)498
D)498
41.由Array函数建立的数组,其变量必须是______类型。
A)整型
B)字符串
C)变体
D)双精度
42.若定义一维数组为:Dim a(N To M),则该数组的元素为______个。
A)M-N
B)M-N+1
C)M*N
D)M+N
43.下列语句中(假定变量n有值),能正确声明可调数组的是______。
A)Dim a( ) As Integer
ReDim a(n)
B)Dim a( ) As Integer
ReDim a(n) As String
C)Dim a( ) As Integer
ReDim a(3,4)
ReDim Preserve
D)Dim a( 10) As Integer
ReDim a(n+10)
44.在窗体的通用声明段自定义了数据类型Students,下列______定义方式是正确的。
A)Private Type Students
Name As String*10
Studno As Integer
End Type
B)Type Students
Name As String*10
Studno As Integer
End Students
C)Type Students
Name String*10
Studno Integer
End Type
D)Type Students
Name As String*10
Studno As Integer
End Type
45. 以下程序的输出结果是______。
Option Base 1
Private Sub Command1_Click( )
Dim a , b(3 ,3)
A=Array(1,2,3,4,5,6,7,8,9)
For i=1 To 3
For j=1 To 3
b(i ,j)=a(i*j)
if (j&=i) Then Print Tab(j*3) ; Format(b(i , j) , &# # #&) ;
Next j
Next i
End Sub
A) 1 2 3
C)1 4 7
D)1 2 3
[NextPage]
二、 填空题
1. 输出大小可变的正方形图案,如图5.2所示,最外圈是第一层,要求每层上用的数字与层数相同。
Option Base 1
Private Sub Form_Click()
Dim a()
n = InputBox(&输入 n&)
ReDim a(n, n)
For i = 1 To (n + 1) / 2
For j = i To n - i + 1
For k = i To n - i + 1
_______【1】_______
Next k
Next j
Next i
For i = 1 To n
For j = 1 To n
_______【2】_______
Next j
_______【3】_______
Next i
End Sub
2. 下面的程序是将输入的一个数插入到按递减的有序数列中,插入后使该序列仍有序。
Private Sub form_Click()
Dim a, i%, n%, m%
a = Array(19, 17, 15, 13, 11, 9, 7, 5, 3, 1)
n = UBound(A)
ReDim _______【4】_______
m = Val(InputBox(&输入插入的数 n&))
For i = UBound(A) - 1 To 0 Step -1
If m &= a(i) Then
_______【5】_______
If i = 0 Then a(i) = m
_______【6】_______
Exit For
End If
Next i
For i = 0 To UBound(A)
Print a(i)
Next i
End Sub
3. 冒泡排序程序如下,请填空。
Private Sub Form_Click()
Dim a, i%, n%, j%
a = Array(1, 5, 6, 4, 13, 23, 26, 31, 51)
n = UBound(A)
For i = 0 To n - 1
For j = 0 To n - 1 - i
If a(j) & a(j + 1) Then
_______【7】_______
_______【8】_______
a(j + 1) = t
End If
Next j
Next i
For i = 0 To UBound(A)
Print a(i)
Next i
End Sub
4.在窗体上画一个名称为&Command1&的命令按钮,然后编写如下事件过程:
Private Sub Command1_Click()
Dim a As String
a = &&
For i = 1 To 5
Print Space(6 - i); Mid$(a, _【9】__ , 2 * i - 1)
Next i
End Sub
程序运行后,单击命令按钮,窗体上的输出结果是:
2345678
请填空。
5.以下程序段产生100个1~4之间的随机整数,并进行统计。数组元素S(i)(i=1,2,3,4)的值表示等于i的随机数的个数,要求输出如下格式:
S(1)=. . .
S(2)=. . .
S(3)=. . .
S(4)=. . .
将程序补充完整。
Dim S(4) As Integer
Randomize
For I=1 To 100
X=Int(Rnd * 4+1)
S(X)=S(X)+1
Next I
For I=1 To 4
_【10】___
Next I
[NextPage]
6.以下程序代码将任意一组数存入数组,从键盘接收一数据,将其插入数组中,插入的位置也从键盘接收。
Dim A( )
Private Sub Form_Click( )
N=InputBox(&数据个数:&)
&, __【11】__
For I=1To N-1
A(I)=Val(InputBox(&原数据:&))
Next I
D=Val(InputBox(&插入的数据:&))
P=Val(InputBox(&插入的位置:&))
Do While P&N Or P&1
MsgBox&位置越界!&
P=Val(InputBox(&插入的位置:&))
For I=N To P+1 Step -1
A(I)=A(I-1)
Next I
A(P)=D
For I=1 To N
Text1.Text=Text1.Text & Str(A(I))&&&
Next I
End Sub
7.设在窗体上有一个文本框Text1,一个标签数组Label1,共有10个标签,以下程序代码实现在单击任一个标签时将标签的内容添加到文本框现有内容之后。
Private Sub Labell_Click(Index As Integer)
Text1.Text=_【12】___
End Sub
8.设工程中有两个窗体Form1、Form2,一个标准模块Module1,设在Form2的代码中定义了以下过程:
Sub aaa(x,y,z)
z=x^2+y^2
End Sub
在Mobule1中定义了以下过程:
Sub bbb(x,y,z)
z=x^3+y^3
End Sub
在Form1中单击命令按钮Commandl时,调用以上过程计算两个数的平方和与立方和。并分别将结果显示在文本框Text3和Text4中,请在以下程序段中写出相应的调用语句。
Private Sub Commandl_Click( )
a=val(Text1.Text)
b=val(Text2.Text)
Call __【13】__
Text3.Text=cl
__【14】__
Text4.Text=c2
End Sub
9.设有如下程序
Private Sub Form_Click()
Dim a As Integer, b As Integer
a = 20 :b = 50
P1 a, b
p2 a, b
p3 a, b
Print &a=&;a,&b=&;b
End Sub
Sub p1(x As Integer, ByVal y As Integer)
x = x + 10
y = y + 20
End Sub
Sub p2(ByVal x As Integer, y As Integer)
x = x + 10
y = y + 20
End Sub
Sub p3(ByVal x As Integer, ByVal y As Integer)
x = x + 10
y = y + 20
End Sub
该程序运行后,单击窗体,则在窗体上显示的内容是:a = _【15】___和 b =__【16】__。
10.设有程序
Option Base 1
Private Sub Command1_Click()
Dim arr1,Max as Integer
arr1=Array(12,435,76,24,78,54,866,43)
__【17】___=arr1(1)
For i=1 To 8
If arr1(i)&Max Then_【18】_
Next i
Print&最大值是:&;Max
End Sub
以上程序的功能是:用Array函数建立一个含有8个元素的数组,然后查找并输出该数组中元素的最大值。请填空。
11.设有如下程序:
Option Base 1
Private Sub Command1_Click()
Dim arr1
Dim Min As Integer,i As Integer
arr1=Array(12,435,76,-24,78,54,866,43)
Min=__【19】__
For i=2 To 8
If arr1(i) Next i
Print &最小值是:&;Min
End Sub
以上程序的功能是:用 Array 函数建立一个含有8个元素的数组,然后查找并输出该数
组中各元素的最小值。请填空。
[NextPage]
一、单选题
二、填空题
a(j, k) = i
Print Tab(j * 3); a(i, j);
Preserve a(n + 1)
a(i + 1) = a(i)
a(i + 1) = m
a(j) = a(j + 1)
Print &S(&;I;&)=&;S(I)
ReDim A(N)
Text1.Text & Labell(Index).Caption
Form2.aaa(a,b,c1)
bbb a,b,c2
Max=arr1(i)
12或arr1(1)
Min=arr1(i)
计算机等级
考试答疑微信:theastudy