第六章数组复习题目

更新时间:2024-04-21 22:48:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

第六章数组复习题目

一、单选题

1. 窗体通用声明部分的 “Option Base 1” 语句,决定本窗体中数组下标 。

A.维下界必须为1 C.维下界不能为0

B.缺省的维下界为1 D.缺省的维下界为0

2、二维数组在内存中是按 存放的。 (A) 行 (B)列 (C)页 (D)矩阵 3、 下面的哪条语句可以正确地声明一个动态数组 。 (A)Private A(n) As Integer (B)Dim A() As Integer (C)Dim A(,) As Integer (D)Dim A(1 To n) 4、下面的数组声明语句中,正确的是_______。

(A) Dim A[3,4] As Integer (B)Dim A(3,4) As Integer (C) Dim A[3.4] As Integer (D)Dim A(3:4) As Integer

5、下面有关ReDim语句用法的说明中,错误的是 。 (A)ReDim语句也可以定义一个新数组

(B)ReDim语句既可在过程中使用,也可在模块的通用声明处使用。 (C)无Preserve关键字的ReDim语句,可重新定义动态数组的各个维数。 (D)用ReDim语句重新定义非Variant动态数组时,不得改变该数组的数据类型

6.以下有关数组的说法中,正确的是 (35) 。

A.数组是有序变量的集合,序列中的变量类型可以不同 B.在一定条件下动态数组可以反复改变其维数与大小

C.数组下标用以确定数组元素在数组中的位置,下标取值只能是0或1 D.固定大小数组也可使用ReDim语句改变其大小

7、设在定义Dim A( ) AS Single语句之后,程序又执行了Redim A(3,4)语句,则以下可以正确执行的Redim语句是 。 A. Redim A(4,5)

B. Redim A(5) AS Integer

C.Redim Preserve A(2,4)

D. Redim Preserve A(3,6)AS Integer

8、表达式x=Int(100 * Rnd +1)生成的随机数的范围为 。 A.1≤x≤100 B.1

(C) 8

(D) 9

10、下面的程序段中,Print语句执行的次数为____ _____。 Dim B(-5 To 5) As Integer, x As Variant For Each x In B x = Int(10 * Rnd) Print x

Next x

A. 10 B. 11 C.9 D.12 11、设有如下的程序段,则执行结果为___ ______。 Dim a(10) As Integer, i As Integer For i = 1 To 10 a(i) = 2*i-1

Next i Print a(i)

A. 19 B. 17 C. 1 D.下标越界 12、设有如下的程序段,当单击窗体时,执行结果为____ _____。 Private Sub Form_Click()

Dim a

a = Array(\ Print a(1); a(3); a(5) End Sub A . ACE

B.ABC C. BDF D. BCD

13、若用复制、粘贴的方法建立了一个命令按钮组Command1,以下对该数组的

说法错误的是 。

A. 命令按钮的所有Caption属性都是Command1 B. 命令按钮的大小都相同 C. 命令按钮共享相同的事件过程

D. 在代码中访问命令按钮只需使用名称Command1

14. 在窗体的通用声明处有语句Dim a() As Single,以下重新定义数组的语句中,正确的是 。

A.ReDim a(3,3) : ReDim a(3,4) As Double B.ReDim a(3,3) : ReDim Preserve a(4,4) C.ReDim a(3) : ReDim a(3,3) As Double D. D.ReDim a(3,3) : ReDim Preserve a(3,4)

二、填空题:

1、重新初始化固定大小数组的元素,或释放动态数组的存储空间,可以

用___ __语句实现。

2、由Array函数建立的数组,其类型必须为 。

3. 执行下面程序,单击命令按钮Command1后,a(2, 3)的值为 ,a(3, 4)

的值为 ,a(5, 4)的值为 。 Option Explicit

Private Sub Command1_Click()

Dim a(5, 5) As Integer, i As Integer, j As Integer For i = 1 To 5 For j = 1 To 5

If i = 1 Or j = 1 Then a(i, j) = 1 Else

a(i, j) = a(i - 1, j) + a(i, j - 1) End If

Print a(i, j);

Next j Print Next i End Sub

4、执行下面程序后,a(1,3)是 ,a(2,2)是 ,a(3,1)是 。

Option Base 1

Private Sub Form_Click()

Dim a(3, 3) As Integer, i%, j%, k%, n% For k = 1 To 5 If k < 3 Then For i = 1 To k n = n + 1 a(i, k - i + 1) = n Next i Else

For i = 1 To 6 - k n = n + 1

a(k - 3 + i, 4 - i) = n Next i End If Next k For i = 1 To 3 For j = 1 To 3 Print a(i, j); Next j Print Next i End Sub

5、任意输入20个大写字母并统计各字母出现的次数,数组元素A(0)中存放

“A”字母出现的次数,A(1)中存放“B”字母出现的次数,??,(25)中存放“Z”字母出现的次数,请完善下列程序片段。

Dim a(0 to 25) As Integer For I = 1 To 20

S = InputBox(\请输入一个大写字母\ If S >= \ IDX = A(IDX) = A(IDX) + 1 End If Next I

6、对于二维数组A(5,5),完善求其主对角线元素之和的程序片段。

For I = 1 To 5 For J = 1 To 5

If Then SUM = SUM + A(I, J) Next J Next I

7、下述程序的功能是随机产生10个互不相同的大写字母。阅读程序并请完善该程序

Option Explicit Option Base 1

Private Sub Form_Click()

Dim a(10) As String * 1, char As String * 1 Dim n As Integer, i As Integer a(1) = Chr(Int(Rnd * 26 + 65)) n = 1 Randomize Do While n < 10

For i = 1 To n

If char = a(i) Then Exit For Next i

If Then n = n + 1 a(n) = char End If Loop

For i = 1 To 10

Text1 = Text1 + Space(2) + a(i) Next i End Sub

If char = a(i) Then Exit For Next i

If Then n = n + 1 a(n) = char End If Loop

For i = 1 To 10

Text1 = Text1 + Space(2) + a(i) Next i End Sub

本文来源:https://www.bwwdw.com/article/bdop.html

Top