国家二级VB机试(选择题)模拟试卷2(共236题)_第1页
国家二级VB机试(选择题)模拟试卷2(共236题)_第2页
国家二级VB机试(选择题)模拟试卷2(共236题)_第3页
国家二级VB机试(选择题)模拟试卷2(共236题)_第4页
国家二级VB机试(选择题)模拟试卷2(共236题)_第5页
已阅读5页,还剩69页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

家二级VB机试(选择题)模拟试卷2

(共6套)

(共236题)

家二级VB机试(选择题)模拟试卷

第1套

一、选择题(本题共38题,每题1.0分,共38分。)

1、在窗体上画一个名称为Commandl的命令按钮,编写如下事件过程:Privaie

SubCominandl_Click()n=0Fori=0To10X=2*i-lIfXMod3=0Thenn=n+lNexti

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

A、1

B、3

C、5

D、7

标准答案:B

知识点解析:本题的For循环共执行11次,在每次循环中计算出一个X的值,然

后判断能否被3整除,如能整除则令计数器n自加建

2、体上有一个名称为Textl的文本框,一个名称为Command1的命令按钮。要求编

写一个程序,统计文本框中0-9各数字字符的个数。某人编写如下程序:Private

SubCommandl_Click()Dimcount(10)AsInteger'第1个For循环Fori=0To9

count(i)=0Nexts=Trim(Textl.Text)strLen=Len⑸'第2个For循环Fori=lTostrLen

c=Mid(s,i,1)Ifc>=,,0,,Andc<=,,9,,Thcnx=Val(c):count(i)=count(i)+lEndIf

Next'第3个For循环Fori=0To9PrintStr(i),count(i)NextEndSub运行程序后,

发现不能实现题目的要求,程序应该进行的修改是

A、将第2个For循环的初值改为0

B、将第2个For语句改为Fori=0To9

C、去掉x=Val?语句

D、Wcount(i)=count(i)+l改为count(x尸count(x)+l

标准答案:D

知识点解析:本题中要求分别统计数字0〜9的个数,使用了一个数组coum来存

放各个数字的个数。在第一个For循环中,将数组的各个元素设置为0,在第二个

循环中,依次取出字符串中的每一个字符,判断是不是在。〜9之间,如果在范围

内,则应该令对应的数组元素加1。如果写成couni(i)=counKi)+l,只能顺序的令每

一个数组元素都加1,只有改写成count(x)=counl(x)+l,让x作为下标,才能保证

让x对应的数组元素加lo

3、在窗体上画一个组合框,其名称为Combol,然后编写如下事件过程:Private

SubForm_Load()CombO1.Text=,,T,Fori=lTO10Sum=Sum+iNexti

Combol.lcxt=SumEndSub程序运行后,输出结果为

A、在组合框的编辑区中显示1

B、在组合框的编辑区中显示不定值

C、在组合框的编辑区中显示55

D、出错信息

标准答案:C

知识点解析:组合框的Text属性将会返回或者设置编辑区中的文本,本题中显示

的是1〜10的累加和55o

4、设a、b都是自然数,为求a除以b的余数,某人编写了以下函数:Function

fun(aAsIntegenbAsInteger)Whilea>ba=a-bWendfun=aEndFunction在调试时发

现函数是错误的。为使函数能产生正确的返回值,应做的修改是

A、把a=a-b改为a=b-a

B、把a=a-b改为a二a\b

C、把Whilea>b改为Whilea<b

D、把Whilea>b改为Whilea>=b

标准答案:D

知识点解析:本题函数过程的原代码仅适合a不能被b整除的两数,而当a能被b

整除时则不适用,如a=4,h=2,a除以h的余数为0,而原代码返I川的函数值为

2o因此需将语句Whilea>b改为Whilea>=bo

5、设有如下事件过程:PrivateSubForm_Click()x=0Whilex<10x=x+l:x=x*x

WendPrintxEndSub运行程序,单击窗体,输出结果是

A、16

B、19

C、20

D、25

标准答案:D

知识点解析:本题是简单While循环,在循环中改变循环变量x的值,要注意退出

循环时x必然是不会满足循环条件的。本题中循环中x依次变化为1、4、25o

6、假定有以下循环结构DoUntil条件表达式循环体Loop则以下正确的描述是

A、如果”条件表达式”的值是0,则一次循环体也不执行

B、如果”条件表达式”的值不为0,则至少执行一次循环体

C、不论”条件表达式”的值是否为“真”,至少要执行一次循环体

D、如果”条件表达式”的值恒为0,则无限次执行循环体

标准答案:D

知识点解析:本题考查的考点是有关Do型循环的。对于这种循环结构,首先看条

件判断在循环体的前面还是后面,如果是先判断条件,则有可能一次也不执行循环

体;如果是后判断条件,则无论条件如何至少执行一次循环体。在Unlil循环中条

件为False时执行循环体,条件为True时退出循环;在While循环中条件为True

时执行循环体,条件为False时退出循环,这一点要注意区分清楚。

7、以下VisualBasic不支持的循环结构是

A、For...Next

ForEach...Next

C、Do...Loop

D^Do...EndDo

标准答案:D

知识点解析:VisualBasic支持的循环结构包括:For...Next循环、ForEach…Next

循环、Do…Loop循环和While循环。

8、在窗体上画两个文本框(名称分别为Textl和Tex⑵和一个命令按钮(名称为

Commandl),然后编写如下事件过程:PrivateSubCommandi_Click()x=0DoWhile

x<50x=(x+2)*(x+3):n=n+lLoopTextl.Text=Str(n):Text2.Text=Str(x)EndSub

程序运行后,单击命令笈钮,在两个文本框中显示的值分别为

A、1和0

B、2和72

C、3和50

D、4和168

标准答案:R

知识点解析:本题考查的考点是有关D。型循环的。对于这种循环结构,首先看条

件判断在循环体的前面还是后面,如果是先判断条件,则有可能一次也不执行循环

体:如果是后判断条件,则无论条件是什么,至少执行一次循环体。在Until循环

中条件为False时执行循环体,条件为True时退出循环;在While循环中条件为

True时执行循环体,条件为False时退出循环,这一点要注意区分清楚。本题只需

要实际计算一下两次循环中x和n值的变化即可容易的得出结果。

9、编写如卜程序:PrivateSubCommandl_Click()DimxAsInteger,yAsInteger

x=l:y=lDoy=x*yIfy>10ThenExitDoElsex=x+3EndIfLoopUntilx<=10Print

x:yEndSub程序运行后,单击命令按钮Commands输出结果为

A、I1

B、41

C>42

D、728

标准答案:B

知识点解析:D。型循环结构,首先看条件判断在循环体的前面还是后面,如杲是

先判断条件,则有可能一次也不执行循环体;如果是后判断条件,则无论条件是什

么,至少执行一次循环体。在Unlil循环中条件为False时执行循环体,条件为

True时退出循环;在While循环中条件为True时执行循环体,条件为False时退出

循环。本题中使用的是后判断型循环,第一次循环时y的值为1,不满足y>10,

执行Else分支,x变成4,此时由于满足x<=10所以结束循环。

10、编写如下程序:PrivateSubCommandI_Click()DimnAsLong,sAsString

n=lnputBox(“输入一个数'')DoWhilen<>0s=s&nMod10:s=s&n\10Mod10n=n

\100LoopPrintsEndSub程序运行后,单击命令按钮Command!,并输入数值

123456,则输出结果为

A、654321

B、563412

C、642531

D、615243

标准答案:A

知识点解析:本题在循环中先将n除以10的余数(即个位数字)连接到s上,然后将

整除10后除以10的余数(即十位,数字)连接到s_L,然后n整除100的值赋值给

n(即去掉最后两位),然后继续进行循环,所以最终将会输出数字的逆序。

11、下面程序计算并输出的是PrivateSubCommandl_Click()a=10:s=0Do

s=s+a*a*a:a=a-lLoopUntila<=0PrintsEndSub

A、13+23+33…+103的值

B、10!+...4-3!+2!+l!的值

C、(1+2+3+…+10)3的值

D、10个103的和

标准答案:A

知识点解析:对于D。型循环结构,首先看条件判断在循环体的前面还是后面,如

果是先判断条件,则有可能一次也不执行循环体;如果是后判断条件,则无论条件

是什么,至少执行一次循环体。在Until循环中条件为False时执行循环体,条件

为True时退出循环;在While循环中条件为True时执行循环体,条件为False时

退出循环。本题是一个比较简单的D。循环,计算从1到10的立方和。

12>窗体上有1个名称为Commandl的命令按钮,事件过程如下:PrivateSub

Commandl_Click()Dimx%,y%,z%x=InputBox("请输入第1个整数”):

y=InputBox(”请输入第2个整数”)DoUntilx=yIfx>yThenx=x-yElsey=y-xEndif

LoopPrintxEndSub运夕亍程序,单击命令按钮,并输入2个整数169和39,则在

窗体上显示的内容为

A、11

B、13

C、23

D、39

标准答案:B

知识点解析:本题的循环中将两个输入的数x和y互相相减,直到x=y为止,实际

上就是辗转相减法求最大公约数的过程。

13、窗体上有1个名称为Command的命令按钮,事件过程及函数过程如下:

PrivateSubCommandl_Click()DimmAsStringm=InputBox("请输入字符串”)Print

pick_str(m)EndSubPrivateFunctionpick_str(sAsString)AsStringtemp="n:i=l:

sLen=Len(s)DoWhilei<=sLen/2temp=temp+Mid(s,i,1)+Mid(s,sLen-i+1,1)

i=i+lLooppick_str=tcmpEndFunction运行程序,单击命令按钮,并在输入对话框

中输入“basic”,则在窗体上显示的内容为

A、bcai

B、cbia

C、bcais

D^cbias

标准答案:A

知识点解析:本题的函数中使用了D。循环,循环条件是i<=sLen/2;由于字符

串的长度为5,所以循环会执行两次:在每次循环中使用Mid函数依次取得字符串

的笫一个字符、最后一个字符、笫二个字符、倒数第二个字符。

14、编写如下程序:PrivateSubCommand1Click()DimmAsInteger,nAsInteger

m=l:n=0DoWhilem<20n=m+n:m=3*m+lLoopPrintm,nEndSub程序运行

后,单击命令按钮Commands输出结果为

A、4018

B、4019

C、2064

D、2164

标准答案:A

知识点解析:本题的D。循环是一个先判断条件型的循环,在循环中将循环变量m

的值每次改变。分析循环可看出,在4次循环中m的值分别为1、4、13、40,而

只有前三次循环中的m值被累加到n中,最后一次循环由于不满足mV20而跳

出。

15、下列循环中,可以正常结束的是

A、i=10Doi=i+1LoopUntili<1

B、i=lDoi=i+lLoopUntili=10

C、i=10Doi=i+lLoopWhilei>1

D、i=10Doi=i-2LoopUntili=l

标准答案:B

知识点解析:Do循环语句的功能是:当指定的“循环条件”为真或直到指定的“循环

条件”变为真之前重复执行循环体。DoWhilc|Until…Loop循环是在条件满足的情况

下才执行一次循环体,而Do...LoopWhile|Until循环不管是否满足条件都先执行一

次循环体,然后再判断条件是否成立以决定后续操作。本题的A选项由于i的值从

10开始递增,永远不会满足i〈l而无限循环;C选项由于i的值从10开始递增,

永远满足>1而无限循环:D选项由于i的值从10开始递减,但是因为每次递减

2,所以i永远为偶数,不会满足i=l而无限循环。

16、以下能够正常结束循环操作的程序段是

A、i=5Doi=i+lLoopUntili<0

B、i=5Doi=i+2LoopUntili=l

C、i=5DoWhilei>0i=i-2Loop

D、1=0DoWhilei<Ii=i-2Loop

标准答案:C

知识点解析:D。循环语句的功能是:当指定的“循环条件”为真或直到指定的“循环

条件''变为真之前重复执行循环体。DoWhilc|Until...Loop循环是在条件满足的情况

下才执行一次循环体,而Do...LoopWhile|Until循环不管是否满足条件都先执行一

次循环体,然后再判断条件是否成立以决定后续操作。本题的A选项由于i的值从

5开始递增,永远不会满足i<0而无限循环;B选项由于i的值从5开始递增,永

远满足i=l而无限循环;D选项由于i的值从0开始递减,永远满足i〈l而无限循

环。

17、窗体上有一个名称为Command1的命令按钮,其单击事件过程如下:Private

SubCommandl_Click()DimsAsDoubles=0:i=lDoWhilei<6s=s+i/(i+1):i=i+l

LoopPrintsEndSub该事件过程的功能是计算一个表达式的值,该表达式是

A、1+1/2+2/3+3/4+4/5

B、1+1/2+2/3+3/4+4/5+5/6

C、1/2+2/3+3/4+4/5

D、1/2+2/3+3/4+4/5+5/6

标准答案:D

知识点解析:本题中D。循环的循环变量i的初值为1.继续循环的条件是iV6.

在每次循环中i的值加1,因此循环会执行5次;在第一次循环中累加1,2,第二

次循环中累加2/3,第三次循环中累加3/4……即最后计算的是1/2+2/3+3/

4+4/5+5/6的值

18、假定有如下程序:PrivateSubForm_Click()DimNAsInteger,]AsIntegerN=0

J=1DoUntilN>2N=N-1:J=J+N*(N+1)LoopPrimN:JEndSub运行程序,单击

窗体,输出结果是

A、321

B、37

C、01

D、313

标准答案:A

知识点解析:D。循环语句的功能是:当指定的“循环条件”为真或直到指定的“循环

条件''变为真之前重复执行循环体。DoWhile|UntiL..Loop循环是在条件满足的情况

下才执行一次循环体,而Do...LoopWhi1e|Until循环不管是否满足条件都先执行一

次循环体,然后再判断条件是否成立以决定后续操作。本题的循环共执行3次,跳

出循环时N的值为3,J的值为21。

19、有如下程序:Functionfun(ByValnumAsInteger)AsIntegerDimkAsInteger

k=lnum=Abs(num)DoWhilenumk=k*(numMod10):num=num\10Loopfun=k

EndFunctionPrivateSubForm_Click()DimnAsInteger,rAsIntegern=InputBox(“请输

入一个数:"):n=Int(n):r=fun(n):PrintrEndSub程序运行后,单击窗体,在输入

对话框中输入246,输巴结果为

A、120

B、48

C、24

D、60

标准答案:B

知识点解析:在函数fun中会对传过来的参数num进行判断,如果不为。则进行循

环,将各位数字乘到一起然后作为函数的返回值。

20、F面程序的功能是输出100以内所有素数:PrivateSubCommandl_Click()For

n=2To100isprime=True:k=2DoWhilek<=n/2AndIfnModk=0Then

isprime=Fa!sek=k+lLoopIfisprimeThenPrintnNextnEndSub为使上面程序可以

实现该功能,程序代码中横线处应填写的代码是

A、isprime

B、Notisprime

C、n<100

D、nV=100

标准答案:A

知识点解析:求素数的基本思路是,用2到n/2依次去除要判断的数n,如果能

整除就将isprime置为Fake代表不是素数:如果isprime已经为False,那么循环没

有继续执行的必要了,所以应填入isprime=Truc,由于是布尔型变量,可以简写为

isprime。

21、编写如下程序:DimnumAsInteger,rAsInteger,nAsInteger,!As

Integer,arr(5)AsIntegerPrivateSubCommandl_Click()num=12:r=2Callsubl(num,

r,n)Fori=nTo1Step-1Printarr(i);NextiEndSubSubsubl(dAsInteger,rAs

Integer,kAsInteger)k=0DoWhiled<>0k=k+1:arr(k)=dModr:d=d\rLoopEnd

Sub程序运行后,单击命令按钮Command】,输出结果为

A、1100

B、0011

C、0101

D、1010

标准答案:A

知识点解析:本题实际上是在子过程subl中对arr数组进行的赋值工作,形参d的

值为12,r的值为2,k的初值为0;在循环中计算d除以2的余数放到数组的第一

个元素,整除2后再除以2的余数放到第二个元素……以此类推,最后数组arr中

存放的是(0、0、1、1),在Commandl_Click()过程中调用完子过程对数组进行赋值

以后,逆序输出了数组的值。

22>编写如下程序:PrivateSubCommandl_Click()DimnAsLong,sAsString

n=lnputBox(“输入一个数“)DOWhilen<>0Printn\10Mod10;:PrintnMod

10;:n=n\100LoopPrintsEndSub程序运行后,单击命令按钮Commandl,并输

入数值123456,则输出结果为

A、654321

B、563412

C、642531

D、615243

标准答案:B

知识点解析:本题中是在一个D。循环中对一个数字进行分解,首先输出该数字整

除10之后再除以10得到的余数(即H立上数字),然后输出该数除以10得到的余

数(即个位数字),然后将该数去掉十位和个位上的数字以后继续循环,最终依次输

出5、6、3、4、1、2«

23、假定有以下程序段Fori=lTo3Fori=5To1Step-1Printi*jNextjNexti则语句

Printi*j的执行次数是

A、15

B、16

C、17

D、18

标准答案:A

知识点解析:本题考查的考点是有关二重循环的°For…Next循环语句可提供一个

重复执行的语句序列,遵循“先检查,后执行''的规则,执行过程中,循环次数

=Inl(终值-初值)/步长+1。二重循环的内循环语句执行次数等于内外循环次数之

积。

24、在窗体上画1个命令按钮,并编写如下事件过程:PrivateSubCommand

l_Click()Dima(3,3)Form=lTO3Forn=lTo3Ifn=mOrn=4-mThena(m,n)=m+n

Elsea(m,n)=0EndIfPrinta(m,n);NextnPrintNextmEndSub运行程序,单击

命令按钮,窗体上显示的内容为

A、200040006

B、204040406

C、230340006

D、200045056

标准答案:B

知识点解析:本题通过一个嵌套的For循环为二维数组a的各元素赋值,该二维数

组对应矩阵的主对角线上的元素(即满足条件m=n)却副对角线上的元素(即满足条

件m+n=4)其值为m+n,即主对角线上的元素从左一卜至右下依次为2、4、6,副

对角线上的元素均为4,而其它元素均为0。

25、编写如下程序:PrivateSubCommandl_Click()DimnumAsInteger,kAs

Intcgcr,nAsIntegernum=InputBox("请输入一个正整数:")k=numn=2DoDoWhile

numModn=0Printn;:num=num/nLoopn=n+lLoopUntiln>k/2EndSub程序

运行后,单击命令按钮Command1,并输入数值20,则输出结果为

A、225

B、234

C、2345

D、25

标准答案:A

知识点解析:D。型循环结构,首先看条件判断在循环体的前面还是后面,如杲是

先判断条件,则有可能一次也不执行循环体;如果是后判断条件,则无论条件是什

么,至少执行一次循环体。在Unlil循环中条件为False时执行循环体,条件为

True时退出循环;在While循环中条件为True时执行循环体,条件为False时退出

循环。本题是一个嵌套的D。循环,外层循环是后判断条件的Until型循环,内层

循环是先判断条件的While型循环。根据输入的值20可判断出三次输出的结果为

2、2、5o

26、编写如下程序:PrivateSubCommandl_Click()Dima(3,3)AsInteger,b(3,

3)AsIntegerFori=lTo3Forj=lTo3a(i,j)=i+j:b(i,j)=a(i,j)+i*(j*l)NextiNexti

Fori=lTo3Forj=lTo3Printb(i,j);NextjPrintNextiEndSub程序运行后,单击

命令按钮Command1,输出结果为

A、234345456

R、2463694812

C、357581171115

D、46871013101418

标准答案:B

知识点解析:本题中有两个二维数组a和b,然后用一个二重循环为两个数组赋

值,根据每次循环中i和i的值不难得出B为正确答案。

27、已知在4行3列的全局数组score(4,3)中存放了4个学生3门课程的考试成绩

(均为整数)。现需要计算每个学生的总分,某人编写程序如下:OptionBasel

PrivateSubCommandl_Click()DimsumAsIntegersum=0Fori=lTo4Fori=lTo3

sum=sum+score(i,j)NextjPrint"第“&i&”个学生的总分是:“;sumNextiEndSub

运行此程序时发现,除第1个人的总分计算正确外,其他人的总分都是错误的,程

序需要修改。以下修改方案中正确的是

A^把外层循环语句Fori=lTo4改为Fori=lTo3内层循环语句Forj=lTo3改为

Fori=lTo4

B、把sum=O移到Fori=lTo4和Foij=lTo3之间

C>ffisum=sum+score(i,j)改为sum=sum+score(j,i)

D^把sum=sum+score(i,j)改为sun尸score。,j)

标准答案:B

知识点解析:本题考查的考点是有关循环求和和二维数组的。本题要对二维数组的

每行进行累加求和,每计算新的一行就应该将累加和变量sum清零,否则上一行

的累加计算结果将会在下一行继续累加,造成结果不正确。

28、在窗体上画一个命令按钮和一个标签,其名称分别为Command1和LabelL然

后编写如下事件过程:FnvatcSubCommandl_Click()Countcr=0Fori=lIo4bor

i=6To1Stcp-2Counter=Countcr+1NextjNextiLabelLCaption=Str(Countcr)EndSub

程序运行后,单击命令按钮,标签中显示的内容是

A、11

B、12

C、16

D、20

标准答案:B

知识点解析:本题考查的考点是有关循环的。通过观察可以得知,在每次内循环中

Counter的值会增加1,所以最终结果就是内循环执行的总次数。由于内循环和外

循环都是For循环,所以循环次数一定,外循环共执行4次,每次外循环中内循环

都执行3次,故内循环执行的总次数为4*3=12次。

29、在窗体上画一个命令按钮,然后编写如下事件过程:PrivateSubCommand

l_Click()DimI,NumRandomizeDoFor1=1To100()Num=!nt(Rnd*I00):Print

Num;SelectCaseNumCase12ExitForCase58ExitDoCase65,68,92EndEnd

SelectNextILoopEndSub上述事件过程执行后,下列描述中正确的是

A、D。循环执行的次数为1000次

B、在For循环中产生的随机数小于或等于100

C、当所产生的随机数为12时结束所有循环

D、当所产生的随机数为65、68或92时窗体关闭、程序结束

标准答案:D

知识点解析:本题考查的考点是有关随机数和退出语句的。在本题中,首先在循环

中生成一个随机数,由于Rnd函数可以生成0〜I开区间的数,所以Inl(Rnd*100)

能够生成0〜99之间的整数,随后对此数进行判断,当随机数为12时退出内循

环;当随机数为58时退出外循环;当随机数为65、68或92时将会结束整个窗体

的运行。本题中的循环次数受随机数控制,所以次数不定。

30、运彳丁如卜程序PrivateSubCommandl_Click()Dima(5,5)AsIntegerFori=lTo

5Foij=1To4a(i,j)=i*2+jIfa(i,j)/7=a(i,j)\7Thenn=n+1EndIfNextjNext

PrintnEndSub贝ijn的值是

A、2

B、3

C、4

D、5

标准答案:B

知识点解析:在二重循环中为二维数组赋初值,每个元素的值均为行号*2加上列

号;在If语句中进行判断,如果数组元素能被7整除则令计数器n加1,所以整个

程序的功能就是统计二维数组中能被7整除的数的个数。

31、命令按钮Command1的单击事件过程如下:PrivateSubCommandl_Click(i

Dima(10,10)AsIntegerx=0Fori=lTo3Foij=lTo3a(i,j)=i*2ModjIfx<a(i,

j)lhcnx=a(i,j)NextNextBrintxEndSub执行上述事件过程后,窗体上显示的是

A、1

B、2

C、3

D、4

标准答案:B

知识点解析:本题中使用二重循环为二维数组赋初值,每个元素的值为行号x2然

后除以列号的余数;接下来找出数组的最大值。由于列号最大只能为3,所以余数

的最大值为2。

32、设有如下程序:OptionBase1Dima(3,4)AsInteger,b(4,3)AsIntegerPrivate

SubCommand1click()'循环1Fori=lTo3Foij=lTo4b(j,i)=a(i,j)NextjNextT

循环2x=b(l,1)Fori=lTo4Foij=lTo3Printb(i,j);Ifx<b(i,J)Thenx=b(i,j)

NextjPrintNextiEndSub程序中的数组a已被赋值。以下关于上述程序的叙述中,

正确的是

A、窗体模块中,不能使用Dim声明a、b数组

B、“循环B可以正常运行

C、“循环2”中循环变量i、j的终值不对,所以不能正常运行

D、程序可以正常运行.x中保存的是数如人中所有元素中最小的数

标准答案:B

知识点解析:在窗体模块中使用Dim声明模块接变量,也可以声明模块级数组:

在循环1中i从1到3,j从1到4,无论是访问b(j,i)还是a(i,j)均在数组的范围

内,可以正常运行;在循环2中b(i,i)的值也在数组范围内,循环可以正常运行;

最后x里面保存的是数组中最大的数。

33、有如下程序:PrivateSubForm_Click()DimsAsInteger,pAsIntegerp=lFori=l

To4Forj=lTois=s+jNextjp=p*sNextiPrintpEndSub程序运行后,单击窗体,

则输出结果是

A、90

B、180

C、400

D、800

标准答案:D

知识点解析:本题是一个二重循环,而且内循环次数根据外循环的循环变量而定。

内循环完成累加,内循环结束后将累加和乘到p中保存起来。在4次外循环中分别

累乘的是1、4、10、20o

34、窗体上有1个名称为Command1的命令按钮,事件过程如下:PrivateSub

Commandl_Click()Dimarr_x(5,5)AsIntegerFori=lTo3Foij=2To4arr_x(i,j)=i*j

NextjNextiPrintart_x(2,I):arr_x(3,2);art_x(4,3)EndSub运行程序,并单击

命令按钮,窗体上显示的内容为

A、060

B、260

C、0612

D、2612

标准答案:A

知识点解析:本题二重循环为二维数组的部分元素赋值,其中arr_x(2,1)的值因

为列号为1,并没有在循环中赋值,保持了默认初值0;arr_x(3,2)的值被赋值为

3*2的值6;arr_xx(4,3)的值因为行号为4也没有在循环中赋值,也保持默认初值

0o

35、在窗体上画一个名称为Command1的命令按钮,并编写如下程序:Option

BaseIPrivateSubCommandl_Click()Dima(4,4)Fori=lTo4Fori=lTo4a(i,

j)=(i-l)*3+jNextjNextiFori=3To4Foij=3To4Printa(j,i);NextjPrintNextiEnd

Sub运行程序,单击命令按钮,则输出结果为

A、69710

B、710811

C、811912

D、9121013

标准答案:D

知识点解析:本题中首先用一个二重循环为二维数组的每一个元素赋值,然后输出

二维数组的部分元素,即依次输出a(3,3)、a(4,3)、a(3,4)、a(4,4)的值,根据

二维数组元素的值,输出分别为9、12、10、13。

36、编写如下程序:PrivateSubCommandl_Click()Dima(3,3)AsInteger,sAs

IntegerFori=lTo3Fori=ITo3a(i,j)=i*j+iNextjNextis=0Fori=lTo3s=s+a(i,

4-i)NextiPrintsEndSub程序运行后,单击命令按钮Command1,输出结果为

A、7

B、13

C、16

D、20

标准答案:C

知识点解析:本题中首先用一个二重循环为二维数组的每一个元素赋值,然后累加

二维数组的部分元素,即依次累加a(l,3)、a(2,2)、a(3,1)的值,相当于对角线

求和。

37、编写如下程序:PrivateSubCommandl_Click()DimiAsIntegerJAsInteger

n=InputBox("输入一个大于1的正整数")Fori=2TonFoij=2ToSqr(i)IfiModj=0

ThenExitForNextjIfj>Sqr(i)ThenPrintiNextiEndSub该程序的功能是

A、判断n是否为素数

B、输出n以内所有的奇数

C、输出n以内所有的偶数

D、输出n以内所有的素数

标准答案:D

知识点解析:本题中的外循环是从2循环到n,然后进入内循环,在内循环中依次

判断i能否被j整除,若能整除则退出内循环:内循环结束后进行判断,如果是中

途退出内循环的则必然不满足i>SqKi),不会输出i的值;只有i不能被任何一个j

整除的情况下才会输出i的值,即判断i是不是素数,只有素数才输出。

38、命令按钮Command)的事件过程如下:PrivateSubCommandl_Click()Dim

art(5,5)AsIntegerDimiAsIntegerjAsIntegerFori=lTo4Foij=2To4arr(i,j)=i+j

NextjNextiPrintart(1,3)+art(3,4)EndSub执行上述过程,输出结果是

A、6

B、7

C、11

D、12

标准答案:C

知识点解析:本题中首先在一个二重循环中给二维数组arr的部分元素赋值,循环

结束后输出两个数组元素的和,根据题意arr(l,3)+arr(3,4)=4+7=1lo

国家二级VB机试(选择题)模拟试卷

第2套

一、选择题(本题共50题,每题1.0分,共50分。)

1、在窗体上画一个通用对话框,程序运行中用ShowOpen方法显示“打开”对诟框

时,希望在该对话框的“文件类型”栏中只显示扩展名为DOC的文件,则在设计阶

段应把通用对话框的Filter属性设置为

A、”(*.DOC)*.DOC”

B、”(*.DOC)||.DO

C、”(*•DOC)||*.DOC^^

D、”(*.DOC)|*.DOC”

标准答案:D

知识点解析:通用对话框(CommonDialog)是可提供诸如打开文件、保存文件、设

置打印选项、选择颜色和字体、显示帮助等操作的一组标准对话框。打开(Open)和

保存(Save)文件对话框中的Filter。属性是过滤器,返回或设置在对话框的类型列

表框中所显示的文件类型,例如,过滤器为*.1X3表示显示所有的文本文件,语

法为:通用对话框名.Filter"描述|文件扩展名”,使用管道符⑴将描述与过滤器隔

开,同样使用管道符将多个过滤器相互分隔;FilteHndex属性返回或设置“打开”或

“另存为”对话框中的一个默认的过滤器,第一个过滤器的索引号是1,如果只有一

个过滤器则无需设置。Filterindex属性。

2、以下关于通用对话框的叙述中,错误的是

A、在程序运行状态下,通用对话框控件是不显示的

B、通用对话框控件是VisualBasic的标准控件

C、设计时,通用对话框控件的大小是固定的,不能改变

D、在同一个程序中,一个通用对话框控件可以作为打开、保存等多种对话框

标准答案:B

知识点解析:通用对话框(CommonDialog)是ActiveX控件,提供诸如打开文件、保

存文件、设置打印选项、选择颜色和字体、显示帮助等操作的一组标准对话框。该

控件设计时大小固定不能改变,运行时不可见。

3、窗体上有一个名称为CD1的通用对话框,一个名称为Commandl的命令按钮,

相应的事件过程如卜:PrivateSubCommandl_Click()CD1.Fiker="All

File|*,*|TextFile|*.txt|PPT|*.ppt“CDLFilterlndex=2:CD1.InitDir=X:

CD1.FilcName^'dcfaulf':CD1.ShowSavcEndSub关于上述过程,以下叙述中

正确的是

A、默认过滤器为“*.ppt”

B、指定的初始目录为“C:\”

C、打开的文件对话框的标题为“default”

D、卜而事件过程实现保存文件的操作

标准答案:B

知识点解析:通用对话框(CommonDialog)是可提供诸如打开文件、保存文件、设

置打印选项、选择颜色和字体、显示帮助等操作的一组标准对话框。打开(Open)和

保存(Save)文件对话框有共同的主要属性,若没有指定InitDir属性值,则起始目录

为当前目录;FileName属性返回或设置所选文件的路径和文件名;Filter属性是过

滤器,返回或设置在对话框的类型列表框中所显示的文件类型,例如,过滤器为

*.txt,表示显示所有的文本文件,语法为:通用对话框名.Filter”描述|文件扩展

名“,使用管道符(1)将描述与过滤器隔开,同样使用管道符将多个过滤器相互分

隔;RMrlndcx属性返回或设置“打开”或“另存为”对话框中一个默认的过滤器,第

一个过滤器的索引号是1:如果只有一个过滤器则无需设置Fikerlndex属性。本题

中只是显示了一个“保存”对话框,并不能真正实现保存操作。

4、在窗体画一名为CoinmonDialogl,则下列与CommonDialogl.ShowOpen方法

等效的语句是

A、CommonDialog1.Action=l

CommonDialog1.Action=2

C、CommonDialog1.Action=3

D、CommonDialog1.Action=4

标准答案:A,

知识点解析:通用对话框提供诸如打开文件、保存文件、设置打印选项、选择颜色

和字体、显示帮助等操作的一组标准对话框,该控件运行时不可见。Aclion属性用

于设置被打开对话框的类型,与ShowXXX方法相对应,如下表所示:

Action属性值显示的对话类取VisualBasic6中对应方法

0无操作

1打开ShowOpen

*2另存为ShowSave

3廉色ShowCoior

4字体ShowFont

5打印ShowPrinter

6调用Windows帮助ShowHelp

5、下列关于利用通用对话框产生的文件对话框的相关属性的描述中,错误的是

A、InitDir属性用于设置对话框中显示的起始目录

B、Filter属性用于设置对话框默认的过滤器

C、DefaukExl属性用于设置对话框中默认的文件类型

D、FileTitle属性用于存放对话框中所选择的文件名

标准答案:B

知识点解析:通用对话框(CommonDialog)是可提供诸如打开文件、保存文件、设

置打印选项、选择颜色和字体、显示帮助等操作的一组标准对话框。打开(Open)和

保存(Save)文件对话框有共同的主要属性,若没有指定InitDir属性值,则起始目录

为当前目录;FileName属性返回或设置所选文件的路径和文件名;Filter属性是过

滤器,返回或设置在对话框的类型列表框中所显示的文件类型,例如,过滤器为

*.txt,表示显示所有的文本文件,语法为:通用对话框名.Filtcr="描述|文件扩展

名”,使用管道符⑴将描述与过滤器隔开,同样使用管道符将多个过滤器相互分

隔;FiMrlndcx属性返回或设置“打开”或“另存为”对话框中一个默认的过滤器,第

一个过滤器的索引号是1;FileTiUe属性用于存放对话框中所选择的文件名;

DefaultExt属性用于设置对话框中默认的文件类型。

6、下列大于通用对话框CommonDialog1的叙述中,错误的是

A、只要在“打开”对话框中选择了文件,并单击“打开”按钮,就可以将选中的文件

打开

B、使用CommonDialogl.ShowColor方法,可以显示“颜色”对话框

C、CancelError属性用于控制用户单击“取消”按钮关闭对话框时,是否显示出错警

D、在显示“字体”对话框前,必须先设置CommonDialogl的Flags属性,否则会出

标准答案:A

知识点解析:通用对话框(CotnmonDialog)提供诸如打开文件(ShowOpen)、保存文

件(ShowSave)、设置打印选项(ShowPrinler)、选择颜色和字体(ShowFonl)、显示帮

助(ShowHelp)等操作的一组标准对话框,该控件运行时不可见。当通用对话框显示

为“打开”类型时.,单击“打开”按钮后其FilcName属性可返回或设置所选文件的路

径和文件名,但并不能直接打开该文件。使用显示字体(Font)对话框之前,必须先

设置控件的Flags属性为cdlCFBoth、cdlCFPrinterFonts^cdlCFScreenFonts这3个

值中的一个。CancclError属性用于设置当用户选择“取消”按钮时,是否显示错误信

息(默认为否)。

7、通用对话框Filter属性的作用是

A、设置对话框的标题

B、指定对话框所选择的文件名

C、指定对话框的打开方式

D、指定对话框中显示的文件类型

标准答案:D

知识点解析:通用对话框(CommonDialog)是可提供诸如打开文件、保存文件、设

置打印选项、选择颜色和字体、显示帮助等操作的一组标准对话框。Filter属性是

过滤器,返回或设置在对话框的类型列表框中所显示的文件类型,例如,过滤器

为.txt,表示显示所有的文本文件,语法为:通用对话框名.Filter"描述|文件扩

展名“,使用管道符(|)将描述与过滤器隔开,同样使用管道符将多个过滤器相互分

隔:Fillerindex属性返回或设置“打开”或“另存为”对话框中一个默认的过滤器,第

一个过滤器的索引号是1。

8、窗体上有一个名称为CD1的通用对话框,一个名称为Tcxtl的文本框,窗体的

单击事件过程如下:PrivateSubForm_Click()CDI.DialogTitle="改变颜色”:

CD1.Color=Forml.BackColorCD1.Action=3:Textl.BackColor=CD1.Color

EndSub运行程序时,单击窗体,则以下叙述中错误的是

A、通用对话框的标题被改为“改变颜色”

B、通用对话框被打开为颜色对话框

C、若选择颜色对话框中的“取消”按钮,则文本框的背景色改为窗体背景色

D、若选择颜色对话框中的“确定”按钮,则文本框的背景色改为在颜色对话框中选

中的颜色

标准答案:A

知识点解析:通用对话框(CommonDialog)提供诸如打开文件、保存文件、设置打

印选项、选择颜色和字体、显示帮助等操作的一组标准对话框,该控件运行时不可

见。通用对话框的DialogTitle属性用于返回或设汽该对话框标题栏上所显示的文

本:Action属性用于设置被打开对话框的类型,3为“打开”颜色对话框类型。只有

设置了Aclion属性后对话框才被打开,对对话框属性的设也才能起作用,由于本

题中设置DialogTitle的语句在设置Action属性之前,因此不起作用。

9、假定在窗体上添加了一个通用对话框控件,其名称为CD1,并有如下程序段:

CD1.ShowOpen:CDI.DefaultExt=”doc”在打开文件的对话框中选择了“c:\

理el・txt”文件,则FileTitle属性的值是

A^filel.doc

B、filel.txt

C、c:\filel.txt

D、c:\filel.doc

标准答案:B

知识点解析:通用对话框(CommonDialog)是可提供诸如打开文件、保存文件、设

置打印选项、选择颜色和字体、显示帮助等操作的一组标准对话框。打开(Open)和

保存(Save)文件对话框有共同的主要属性,若没有指定InilDir属性值,则起始目录

为当前目录;FileName属性返回或设置所选文件的路径和文件名;Filter属性是过

滤器,返回或设置在对话框的类型列表框中所显示的文件类型,例如,过滤器为

*.txt,表示显示所有的文本文件,语法为:通用对话框名.Filter“描述|文件扩展

名”,使用管道符(1)将描述与过滤器隔开,同样使用管道符将多个过滤器相互分

隔:Fihcrlndcx属性返回或设置“打开、蹴"另存为”对话框中一个默认的过滤器,笫

一个过滤器的索引号是1;FileTiUe属性用于存放对话框中所选择的文件名;

DefauItExt属

10、利用通用对话框控件打开字体对话框的操作是

A、把通用对话框控件的Action属性设置为4

B、把通用对话框控件的Action属性设置为5

C、调用通用对话框控件的OpenFont方法

D、调用通用对话框控件的ShowText方法

标准答案:A

知识点解析:通用对话框(CommonDialog)提供诸如打开文件、保存文件、设置打

印选项、选择颜色和字体、显示帮助等操作的一组标准对话框,该控件运行时不可

见。Action属性用于设置被打开对话框的类型,要想打开字体对话框,需要将通用

对话框控件的Action属性设置为4,或者调用对话框的ShowFont方法。

11、以下关于多重窗体程序的叙述中,错误的是

A、对于多重窗体程序,需要单独保存每个窗体

B、在多重窗体程序中,可以根据需要指定启动窗体

C、在多重窗体程序中,各窗体的菜单是彼此独立E勺

D、用Hide方法不仅可以隐藏窗体,而且还可以清除内存中的窗体

标准答案:D

知识点解析:包含多个窗体的程序称为多重窗体程序(MutilForm)。多重窗体是单

一窗体的集合,每个窗体独立保存,各窗体之间的控件、菜单等对象都是相互独立

的。对于多重窗体程序,必须指定其中某一个窗体为启动窗体,如果未指定,设计

时的第一个窗体默认为启动窗体。只有启动窗体才能在运行程序时自动显示出来,

其他窗体必须通过Load及Show方法才能看到,使用Hide方法使窗体隐藏,即不

在屏幕上显示,但仍在内存中。

12、下列操作中不能向工程添加窗体的是

A、执行“工程”菜单中的“添加窗体”命令

B、单击工具栏上的“添加窗体”按钮

C、右击窗体,在弹出的菜单中选择“添加窗体”命令

D、右击工程资源管理器,在弹出的菜单中选择“添加”命令,然后在下一级菜单中

选择''添加窗体”命令

标准答案:C

知识点解析:可以通过执行“工程(Project)”一“添加窗体(AddForm)”菜单命令来建

立窗体,每执行一次就新建立一个窗体:也可以单击工具栏上的“添加窗体”按钮;

右击工程资源管理器,在弹出的菜单中选择“添加『命令,然后在下一级菜单中选择

“添加窗体”命令也可以添加窗体。

13、对于含有多个窗体的工程而言,以下叙述中正确的是

A、没有指定启动窗体时,系统自动将最后一个添加的窗体设置为启动窗体

B、启动窗体可以通过“工程属性”对话框指定

C、Load方法兼有装入刘显示窗体两种功能

D、Hide方法可以将指定的窗体从内存中清除

标准答案:B

知识点解析:没有指定启动窗体时,系统自动将第一个添加的窗体设置为启动窗

体;启动窗体可以通过“工程属性”对话框指定。Load方法用于将窗体装入内存,

Show方法用于显示窗体,Hide方法用于隐藏窗体,Unload方法可以将指定的窗体

从内存中清除。

14、设工程中有Fonnl>Form2两个窗体,要求单击Fonn2上的Commandl命令按

钮,Form2就可以从屏幕上消失,下面的事件过程中不能实现此功能的是

ANPrivateSubCommandl_Click()Form2.HideEndSub

B、PrivateSubCommandl_Click()UnloadMeEndSub

C、PrivateSubCommandl_Click()Form2.UnloadEndSub

D、PrivateSubCommandl_Click()Me.HideEndSub

标准答案:C

知识点露析:Hide方法可以隐藏一个窗体,Me指代当前窗体,所以语句

Form2.Hide和Me.Hide均可以隐藏当前窗体Form2;Unload语句可以在内存中

卸载一个窗体,该语句不能当作方法使用。

15、工程中有Forml>Form2两个窗体(Fonnl中有文本框Textl;Form2中有Textl

文本框和Command1命令按钮)。Forml是启动窗体,在这些模块中编写下面的程序

代码:Forml中的代码如下:PrivateSubText1DblClick()Textl=^^VisualBasic^^

Form2.ShowEndSubForm2中的代码如F:PrivateSubCommandl_Click()

Textl=Forml.TextlForml.ShowEndSub下面关于程序的叙述中错误的是

A^双击Forml的Textl后,Textl中显示“VisualBasic",弹出Form2

B、双击Forml的Texll后,Form2成为当前窗体

C、单击Form2的命令按钮,Forml成为当前窗体

D^Form2的Textl=Forml.Textl语句不能正确执行

标准答案:D

知识点解析:本题中Forml中文本框的双击事件中会将文本框里面的内容设置为指

定的值,而且打开窗体Form2并使Form2成为当前窗体;在Form2的命令按钮中

的单击事件中会将本窗体中的Textl内容赋值成Forml窗体的文本框Textl的内

容,并使Fonnl成为当前窗体。

16、设工程中有2个窗体:FormlForm2,每个窗体上都有一个名称为Textl的

文本框。若希望把Forml上文本框中的内容复制到Form2上的文本框中,应进行

的操作是

AN执行Forml中的语句:Forml.Tcxtl=Form2.Textl

B、执行Forml中的语句:Textl=Forml.Text

C^执行Form2中的语句:Forml.Textl=Textl

D、执行Fonn2中的语句:Tcxtl=Forml.Textl

标准答案:D

知识点解析:文本框的默认属性是Text属性,在当前窗体中引用控件不必加上窗

体前缀。

17、设工程文件包含两个窗体文件Forml.(Ym、Form2.frm及一个标准模块文件

Module1.bas。两个窗体上分别只有一个名称为Commandl的命令按钮。Forml的

代码如下:PublicxAsIntegerPrivateSubForm_Load()x=1:y=5EndSubPrivate

SubCommandl_Click()Form2.ShowEndSubForm2的代码如F:PrivateSub

Commandl_Click()PrintForml.x.yEndSuhModulel的代码如下:PublicyAs

Integer运行以上程序,单击Forml的命令按钮Commandl,则显示Fonn2;再单击

Form2上的命令按钮Commandl,则窗体上显示的是

A、15

B、05

C、00

D、程序有错

标准答案:A

知识点解析:本题考查的考点是有关变量的作用域的。本题中的y就是在标准模块

中定义的全局变量,在任何一个窗体中都能应用,并在

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论