数组习题.docx

上传人:b****3 文档编号:4628501 上传时间:2023-05-07 格式:DOCX 页数:14 大小:20.21KB
下载 相关 举报
数组习题.docx_第1页
第1页 / 共14页
数组习题.docx_第2页
第2页 / 共14页
数组习题.docx_第3页
第3页 / 共14页
数组习题.docx_第4页
第4页 / 共14页
数组习题.docx_第5页
第5页 / 共14页
数组习题.docx_第6页
第6页 / 共14页
数组习题.docx_第7页
第7页 / 共14页
数组习题.docx_第8页
第8页 / 共14页
数组习题.docx_第9页
第9页 / 共14页
数组习题.docx_第10页
第10页 / 共14页
数组习题.docx_第11页
第11页 / 共14页
数组习题.docx_第12页
第12页 / 共14页
数组习题.docx_第13页
第13页 / 共14页
数组习题.docx_第14页
第14页 / 共14页
亲,该文档总共14页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

数组习题.docx

《数组习题.docx》由会员分享,可在线阅读,更多相关《数组习题.docx(14页珍藏版)》请在冰点文库上搜索。

数组习题.docx

数组习题

第五章数组习题

一、选择题

1.如下数组声明语句,(b)正确。

(A)Dima[3,4]asinteger(B)Dima(3,4)asinteger

(C)Dima(n,n)asinteger(D)Dima(34)asinteger

2.要分配存放如下方阵

,可使用声明语句(c)来实现(不能浪费空间)。

.

(A)Dima(9)assingle(B)Dima(3,3)assingle

(C)Dima(-1to1,-5to-3)assingle(D)Dima(-3to-1,5to7)asinteger

3.数组声明语句Dima(3,-2to2,5)asinteger中,数组a包含的元素个数为(120)。

4.用语句Dima(-3to5)asinteger所定义的数组的元素个数是(9)。

5.用语句Dima(3to5,-2to2)所定义的数组的元素个数是(15)。

6.下面的B中有(9)个数组元素。

DimB:

B=Array(1,2,3,4,5,6,7,8,9)

二、填空题

1.控件数组的名字由(name)属性指定,而数组中的每个元素由(index)属性指定。

2.由Array函数建立的数组的名字必须是(变体类型)类型。

3.数组定义DimD(20),数组D有(21个)个数组元素。

三、分析程序的运行结果

1.在窗体上画一个命令按钮command1,然后编写如下事件过程:

optionbase1

privatesubcommand1_click()

dima

a=array(1,2,3,4)

j=1

fori=4to1step-1

s=s+a(i)*j

j=j*101

nexti

prints

endsub

程序运行后,单击command1,输出结果为:

1234

2.在窗体上画一个命令按钮command1,然后编写如下事件过程:

optionbase1

privatesubcommand1_click()

dima,b(3,3)

a=array(1,2,3,4,5,6,7,8,9)

fori=1to3

forj=1to3

b(i,j)=a(i*j)

ifj>=Ithenprinttab(j*3);b(I,j);

nextj

print

nexti

endsub

程序运行后,单击command1,输出结果为:

123

46

9

3.在窗体上画一个命令按钮command1,然后编写如下事件过程:

optionbase1

privatesubcommand1_click()

dima%(3,3)

fori=1to3

forj=1to3

ifj>1andi>1then

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

else

a(i,j)=i*j

endif

printa(i,j);”“;

nextj

print

nexti

endsub

程序运行后,单击command1,输出结果为:

123

231

323

4.在窗体上画一个命令按钮command1,然后编写如下事件过程:

optionbase1

privatesubcommand1_click()

dima%(10),p(3)asinteger

k=5

fori=1to10

a(i)=i

nexti

fori=1to3

p(i)=a(i*i)

nexti

fori=1to3

k=k+p(i)*2

nexti

printk

endsub

程序运行后,单击command1,输出结果为:

33

5.在窗体上画一个命令按钮command1,然后编写如下事件过程:

optionbase1

privatesubcommand1_click()

dima%(4,4)

fori=1to4

forj=1to4

a(i,j)=(i-1)*3+j

nextj

nexti

fori=1to4

forj=1to4

printa(j,i);

nextj

print

nexti

endsub

程序运行后,单击command1,输出结果为:

14710

25811

36912

471013

6.在窗体上画一个命令按钮command1,然后编写如下事件过程:

optionbase1

privatesubcommand1_click()

dima%(5,5)

fori=1to3

forj=1to4

ifj>1andi>1then

a(i,j)=i*j

endif

nextj

nexti

forn=1to2

form=1to3

printa(m,n);

nextm

print

nextn

endsub

程序运行后,单击command1,输出结果为:

000

046

7.在窗体上画一个命令按钮command1,然后编写如下事件过程:

privatesubcommand1_click()

dima%(5)

fori=0to4

a(i)=i+1

t=i+1

ift=3then

printa(i);

a(t-1)=a(i-2)

else

a(t)=a(i)

endif

ifi=3thena(i+1)=a(t-4)

a(4)=1

printa(i);

nexti

endsub

程序运行后,单击command1,输出结果为:

123141

8.在窗体上画一个命令按钮command1,然后编写如下事件过程:

privatesubcommand1_click()

dima%(3,3)

dimb

b=array(1,2,3,4,5,6,7,8,9)

j=1

fori=0to8

j=imod3

k=i\3

a(j,k)=b(i)

nexti

k=1

forj=0to2

printtab(3*(j+1));a(k,j);

nextj

endsub

程序运行后,单击command1,输出结果为:

258

9.在窗体上画一个命令按钮command1,一个文本框text1,然后编写如下事件过程:

privatesubcommand1_click()

dimb

b=array(34,5,13,35,9,6,42)

fori=1toubound(b,1)

ifb(i)>b(i-1)then

x=b(i)

forj=i-1to0step-1

ifb(j)>xthenexitfor

b(j+1)=b(j)

nextj

b(j+1)=x

endif

nexti

text1=””

fori=0toubound(b,1)

text1=text1+str(b(i))+”,”

nexti

endsub

运行程序后,文本框text1中的内容是:

42,35,34,13,9,6,5

10.在窗体上画一个命令按钮command1,然后编写如下事件过程:

privatesubcommand1_click()

dima(3,3)

fori=0to3

forj=0to3

a(i,j)=(i+1)*10+j

nextj,i

fori=0to3

forj=0to3

ifi

x=a(i,j):

a(i,j)=a(j,i):

a(j,i)=x

endif

nextj,i

fori=0toubound(a,1)

forj=0toubound(a,2)

printa(i,j);

nextj

print

nexti

endsub

运行程序后,文本框text1中的内容是:

10203040

11213141

12223242

13233343

11.在窗体上画一个命令按钮command1,然后编写如下事件过程:

privatesubcommand1_click()

dimarr1%(10),arr2(10)

n=3

fori=1to5

arr1(i)=i

arr2(n)=2*n+i

nexti

printarr2(n);arr1(n)

endsub

程序运行后,单击command1,输出结果为:

113

12.在窗体上画一个命令按钮command1,然后编写如下事件过程:

privatesubcommand1_click()

dimm%(10)

fork=1to10

m(k)=12-k

nextk

x=6

printm(2+m(x))

endsub

程序运行后,单击command1,输出结果为:

4

13.在窗体上画一个命令按钮command1,然后编写如下事件过程:

privatesubcommand1_click()

dimb

b=array(56,22,16,67,26,14,9,87)

k=3

dowhilek

b(k)=b(k+1)

k=k+1

loop

printb(5)

endsub

程序运行后,单击command1,输出结果为:

9

14.在窗体上画一个命令按钮command1,然后编写如下事件过程:

privatesubcommand1_click()

dimb,a(2,4)

b=array(1,2,3,4,5,6,7,8,9,10,11,12,13,14)

fori=0to2

forj=0to4

a(i,j)=b(i*(ubound(a,2)+1)+i)

nextj

nexti

printb(i*(ubound(a,2)+1)-3)

endsub

程序运行后,单击command1,输出结果为:

13

15.在窗体上画一个命令按钮command1,然后编写如下事件过程:

privatesubcommand1_click()

dima(5to16)

dimb

b=array(1,2,3,4,5,6,7,8,9)

fori=1to8

a(5+i)=b(i)

nexti

printa(7)

endsub

程序运行后,单击command1,输出结果为:

3

16.在窗体上画一个命令按钮command1,然后编写如下事件过程:

privatesubcommand1_click()

dimb,a(3,3)

b=array(1,2,3,4,5,6,7,8,9)

j=1

fori=0to8

k=i\3:

j=Imod3

a(k,j)=b(i)

printa(k,j);

ifj=2thenprint

nexti

endsub

程序运行后,单击command1,输出结果为:

123

456

789

17.在窗体上画一个名称为Command1的命令按钮,然后编写如下程序:

PrivateSubCommand1_Click()

DimiAsInteger,jAsInteger

Dima(10,10)AsInteger

Fori=1To3

Forj=1To3

a(i,j)=(i-1)*3+j

Printa(i,j);

Nextj

Print

Nexti

EndSub

程序运行后,单击命令按钮,窗体上显示的是

123

456

789

18.在窗体上画一个名称为Text1的文本框和一个名称为Command1的命令按钮,然后编写如下事件过程:

PrivateSubCommand1_Click()

Dimarray1(10,10)AsInteger

Dimi,jAsInteger

Fori=1To3

Forj=2To4

array1(i,j)=i+j

Nextj

NextI

Text1.Text=array1(2,3)+array1(3,4)

EndSub

程序运行后,单击command1,文本框中显示的结果为:

12

四、简答题

1.要分配存放12个元素的整形数组,下列数组声明(若无下界,按默认规定)哪些符合要求?

(1)n=12

(2)Dima%()

Dima(1ton)asintegern=11

ReDima(n)

(3)Dima%[2,3](4)Dima(1,1,2)asinteger

(5)Dima%(10)(6)Dima!

()

ReDima(1to12)ReDima(3,2)asinteger

(7)Dima%(2,3)(8)Dima(1to31to4)asinteger

2.已知下面的数组声明,写出它的数组名、数组类型、维数、各维的上下界、数组的大小,并按行的顺序列出各元素。

Dima(-1to2,3)assingle

3.静态数组和动态数组的区别是什么?

在声明静态数组、重定义动态数组时的下标都可以用变量来表示吗?

4.已声明了静态数组a(3,4),能否在下面再用重定义动态数组a(4,4)来重定义A数组的大小?

5.使用ReDim语句可以改变数组类型吗?

6.在ReDim语句中加了Preserve关键字,对重定义数组有何限制?

7.利用随机数生成两个四行四列的矩阵(数据不一定相同,前者范围在30~70,后者为101~135)。

要求:

(1)将两个矩阵相加结果放入C矩阵中。

(2)将a矩阵转置。

(3)求C矩阵中元素的最大值和下标。

(4)以下三角形式显示A矩阵、上三角形式显示B矩阵。

(5)将A矩阵第一行与第三行对应元素交换位置,即第一行元素放到第三行,第三行元素放到第一行。

(6)将A矩阵两条对角线元素之和。

(7)将A矩阵按列的次序把各元素放入一位数组D中,显示结果。

8.声明一个有20个元素的一维字符类型数组,要求:

(1)由随机数形成小写字母构成的数组,每个元素的字符个数由随机数产生,范围1~11。

(2)要求将生成的数组分四行显示。

(3)显示生成的字符数组中字符最多的元素。

9.自定义一个职工类型,包含职工号、姓名和工资。

声明一个职工类型的动态数组。

输入n个职工的数据,要求按工资递减的顺序排序,并显示排序的结果,每个职工一行显示三项信息。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 总结汇报 > 其它

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2