数组练习题

更新时间:2023-10-08 18:05:01 阅读量: 综合文库 文档下载

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

数组练习题

08级(3—6)12月13日

一、

选择题

1、定义10个单精度实型一维数组正确的语句是( ) A、dim abc(9) as single B、 option base 1:dim abc(9) C、 dim abc#(9)

D、dim abc(10) as single

2、用Dim AABB(-2 to 10,4 to 8,1)声明的是一个( )维数组。 A、1 B、2 C、3 D、4

3、用下面的语句所定义的数组的元素个数是( ) Dim S1(-2 To 4) As Integer A、6 B、7 C、8 D、9

4、在窗体上画一个按钮(其NAME属性为Command1),然后编写如下代码: Private sub Command1_Click()

Dim arr1(10) As Integer,arr2 As Integer N=3 For i=1 to 5 Arr1(i)=i Arr2(n)=2*n+i Next i

Print arr2(n);arr1(n) End sub

程序运行后,单击命令按钮,输出结果是( ) A、11 3 B、3 11 C、13 3 D、3 13

5、在窗体上画一个按钮(其NAME属性为Command1),然后编写如下代码: Option Base 1

Private sub Command1_Click()

Dim a(10) As Integer, p(3) As Integer

1

K=5

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、35 B、28 C、33 D、37

6、在窗体上画一个按钮(其NAME属性为Command1),然后编写如下代码: Option Base 1

Private sub Command1_Click() Dim a a=array(1,2,3,4) j=1

for i=4 to 1 step -1 s=s+a(i)*j j=j*10 next i print s end sub

程序运行后,单击命令按钮,输出结果是( ) A 、4321 B、12 C、34 D、1234

7、在窗体上画一个按钮(其NAME属性为Command1),然后编写如下代码:

2

Option Base 1

Private sub Command1_Click() Dim a(4,4) For i=1 to 4

For j=1 to 4 a(I,j)=(i-1)*3+j Next j Next i For i=3 to 4

For j=3 to 4 Print a(j,i); Next j Print Next i End sub

程序运行后,单击命令按钮,输出结果是( ) A、 6 9 B、7 10 C、8 11 D、9 12

7 10 8 11 9 12 10 13 8、有如下程序段:

N=-5:M=6 DIM A(N TO M)

FOR I=LBOUND(A,1) TO UBOUND(A,1) A(I)=I NEXT I

PRINT A(LBOUND(A,1)),A (UBOUND(A,1)) 运行后输出的结果是____。

A、0 0 B、-5 0 C、-5 6 D、0 6 9、有如下程序段:

DIM A (3,3) AS INTEGER

3

FOR M=1 TO 3 FOR N=1 TO 3

A(M-1,N-1)=M+N-1 NEXT N,M FOR M=0 TO 2 FOR N=0 TO 2

PRINT A(N,M); NEXT N PRINT NEXT M

运行后输出的结果为____。

A、0 1 2 B、1 2 3 C、1 3 1 2 3 2 3 4 3 5、下面程序段的功能为___。

K=0

DIM A(10) FOR I=1 TO 10

A(I)=INT (RND*100) NEXT I INPUT X FOR

I=1 TO 10

IF X=A(I) THEN K=K+1 NEXT I PRINT K

A.查找X在数组A中的位置 B.统计X在数组A中出现的次数 C.显示有数组A中与X相同的所有的数 D.计算数组A中与X相同的所有数值之和

4

5 D、2 4 6 7 4 6 8 10

11、与OPTION BASE 1:DIM N(10)功能相同的为______

A、DIM N(10) AS LONG B、DIM N&(10)

C、DIM N(1 TO 10)AS LONG D、DIM N(1 TO 10)

12、下面程序的输出结果为___。

OPTION BASE 1 DIM A(10)

FOR K=1 TO 10 A(K)=2*K NEXT K

PRINT A(A(2)) END

A、8 B、4 C、2 D、代码有错,无输出 13、运行以下程序;

A1=1:A2=2:A3=3:A(1)=5 T=0

FOR I=1 TO 3 T=T+A(1)

PRINT I;AI;A(I)

NEXT I

PRINT “T=”;T END

输出结果是( )

A、1 1 5 B、1 0 5 C、1 0 5 D、1 O 5

2 2 0 2 0 0 2 0 2 2 0 0 3 3 0 3 0 0 3 0 3 3 0 0 T=6 T=15 T=0 T=6

14、运行以下程序

5

DIM A(10) FOR I=1 TO 10 A(I)=I^2 NEXT I PRINT A(I-1)

输出结果是( )

A、0 B、2 C、81 D15、DIM X(5) X(0)=1 FOR I=1 TO 5 X(I)=X(I-1)*I PRINT X(I); NEXT I 输出结果是( )

A、1 2 3 4 5 B、1 2 6 24 120 C、1 2 6 12 20 D、1 1 2 3 4 16、运行以下程序: DIM X(5) X(0)=1 FOR I=1 TO 5 X(I)=X(I-1)+I PRINT X(I); NEXT I

A.1 2 3 4 5 B.2 3 4 5 6 C.2 4 7 11 16 D.1 3 6 10 15 17、运行以下程序: DIM A(100),B(100) FOR I=1 TO 100 A(I)=I

、100 6

NEXT I

FOR I=1 TO 100 B(I)=A(I)+A(I-1) PRINT B(I), NEXT I

A. 数组A和数组B各存储1—100之间的自然数

B. 数组A存储1-100自然数,数组B存储1—199的奇数 C. 数组A存储1-100自然数,数组B存储101-200的自然数 D. 数组A存储1-100自然数,数组B存储2-200的偶数

18、在窗体上画一个名称为Command1的命令按钮,然后编写如下代码: Option Base 1

Private Sub Command1_Click() d = 0 c = 10

x = Array(10, 12, 21, 32, 24) For i = 1 To 5 If x(i) > c Then d = d + x(i) c = x(i) Else d = d-c End If Next i Print d End Sub

程序运行后,如果单击命令按钮,则在窗体上输出的内容为 A)89 B)99 C)23 D)77 二、填空题

1、在VB中,把____________________________称为数组。

7

2、在VB中,定长数组是指______________________________。

3、在VB中可以用_______在窗体模块或标准模块中声明数组,也可用在过程中;使用___________在窗体模块或标准模块中声明数组,也可用在过程中;使用_________可在过程中声明表态数组;使用________可在标准模块中声明全局数组。

4、DIM语句必须放在_____________,遵循先声明后使用的原则。

5、用DIM语句定义数组时,数值型数组中的元素全部初始化为______,字符串数组中元素初始化为_______。

6、下标下界和下标上界分别表示数组某一维___________和___________。 7、使用ARRAY函数为数组赋初值时,数组变量只能是_____________。ARRAY只适用于____________,不能对二维或多维数组赋值。

8、对于用REDIM声明的数组,如果用REDIM重新声明数组只能修改数组中_____________,不能修改数组的维数。

9、引用数组元素时,_______________________________必须与声明数组时一致。

10、在窗体上画一个按钮(其NAME属性为Command1),然后编写如下代码: Private sub Command1_Click()

Dim n() As Integer Dim a As Integer,b As Integer a=inputbox(\ the first number: \b= inputbox(\ the first number: \redim n(a to b)

for k=Lbound(n,1) to Ubound(n,1) n(k)=k

print \next k end sub

程序运行后,单击命令按钮,在输入对话框中分别输入2和3输出结果__________________

8

11、在窗体上画一个按钮(其NAME属性为Command1),然后编写如下代码: Private sub Command1_Click()

Dim A(5) For i=0 to 4 A(i)=i+1 T=i+1

If T=3 then Print a(i); A(T-1)=a(i-2) Else A(T)=a(i) End if

If i=3 then a(i+1)=a(t-4) A(4)=1 Print a(i); Next i End sub

程序运行后,单击命令按钮,输出结果__________________

12、在窗体上画一个按钮(其NAME属性为Command1),然后编写如下代码: Private sub Command1_Click()

Dim M(10) As Integer For k=1 to 10 M(k)=12-k Next k X=6

Print m(2+m(x)) End sub

程序运行后,单击命令按钮,在输入输出结果__________________

13、在窗体上画一个按钮(其NAME属性为Command1),然后编写如下代码:

9

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 Print Next n End sub

程序运行后,单击命令按钮,在输入输出结果__________________ 三、程序填空: 1、设有程序: Option Base 1

Private Sub Command1_Click() Dim arr1, Max as Integer

arr1 = Array(12, 435, 76, 24, 78, 54, 866, 43) _________ = arr1(1) For i = 1 To 8

If arr1(i) > Max Then _____________ Next i

Print \最大值是: \ End Sub

以上程序的功能是:用Array函数建立一个含有8个元素的数组,然后查找并输出该数组中元素的最大值。请填空。

10

2、用随机函数产生(100,500)中的100个随机整数,并求其中所有奇数之和,请把程序补充完整。

Private sub form_click() S=0

DIM A(100) as integer FOR I=1 TO 100 A(I)=_______________ PRINT A(I);

IF ___________ THEN GOTO 80 S=S+A(I) 80 NEXT I PRINT

PRINT “S=”;S End sub

3、建立并打印一个除次对角线元素为1,其余元素为0的10行10列的二维数组。

Private sub form_click()

DIM A(10,10) AS integer FOR I=1 TO 10 FOR J=1 TO 10

IF _________ THEN 70 A(I,J)=0 ___________ 70 A(I,J)=1 80 PRINT “ ”;A(I,J); NEXT J

_____________

NEXT I End sub

4、利用随机函数产生[1,100]之间的50个整数,挑选出能同时被3和5整除的数,并统计个数。 OPTION BASE 1

Private sub form_click() RAMDOMIZE TIMER

11

DIM A(50) AS integer FOR I=1 TO 50

A(I)=_____________

IF A(I) MOD 3=0 AND_______THEN

PRINT A(I)

____________ END IF NEXT i PRINT K End sub 四、程序设计

1、从键盘上输入10个整数,并放入一个一维数组中,然后将其前5个元素与后元素对换,即第1个元素与第10个元素对换,第2个与第5个对换??第5个与第6个元素对换。分别输出数组原来各元素的值和对换后各元素的值。

2、有一个N×M的矩阵,编写程序,找出其中最大的元素所在行和列,并输出其值及行号和列号。

12

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

Top