全国计算机等级考试二级vb试题.docx
《全国计算机等级考试二级vb试题.docx》由会员分享,可在线阅读,更多相关《全国计算机等级考试二级vb试题.docx(16页珍藏版)》请在冰豆网上搜索。
全国计算机等级考试二级vb试题
二级visualBasic笔试试卷01
一、选择题(
(1)一(20)每小题2分,(21)一(30)每小题3分,共30题,70分)
下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂
在答题卡的相应位置上,答在试卷上不得分。
(1)以下不能在“工程资源管理器”窗口中列出的文件类型是
A).basB).resC).fnnD).ocx
(2)以下关于窗体的描述中,错误的是
A)执行UnloadFoMl语句后,窗体Fonnl消失,但仍在内存中
B)窗体的Ioad事件在加载窗体时发生
C)当窗体的Enabled属性为False时,通过鼠标和键盘对窗体的操作都被禁止
D)窗体的Height、width属性用于设置窗体的高和宽
(3)下列可作为V2sualBasic变量名的是
A)A#AB)4AC)?
xYD)constA
(4)设有如下的记录类型
TypeStudent
numberAsstring
nameAsString
ageAsInteger
EndType
则正确引用该记录类型变量的代码是
A)Student.name=”张红”B)DimsAsStudent
s.name=”张红”
C)DimsAsTypeStudentD)DimsAsType
S.name=”张红”s.Dame=”张红”
(5)函数String(n,“str”)的功能是
A)把数值型数据转换为字符串
B)返回由n个字符组成的字符串
C)从字符串中取出n个字符
D)从字符串中第n个字符的位置开始取子字符串
(6)将数学表达式Cos2(a+b)+5e2写成VisualBasic的表达式,其正确的形式是
A)Cos(a+b)A2十5。
exp
(2)B)Cos^2(a+b)+5*exp
(2)
C)Cos(a+b)^2十5*ln
(2)D)Cos^2(a+b)+5*ln
(2)
(7)在窗体上画一个命令按钮,名称为Commandl。
单击命令按钮时,执行如下事件过
程:
PrlVateSubCommandl—C1icko
a$="softwareandhardware"
b$=Right(a$,8)
c$=Mid(a$,1,8)
Msgboxa$,,b$,c$,1
EndSub
则在弹出的信息框的标题栏中显示的信息是
A)softWareandhardwareB)softwareC)hardwafeD)1
(8)执行如下语句:
a=inutBox(”Today”,”TomorroW,”Yesterday”,,,"Daybeforeyesterday",5)
将显示一个输入对话框,在对话框的输入区中显示的信息是
A)TodayB)TomorrowC)YesterdayD)Daybeforeyesterday
(9)表示滚动条控件取值范围最大值的属性是
A)MaxB)LargeChangeC)ValueD)Max—Min
(10)设a=10,b=5,c=1,执行语句Printa>b>c后,窗体上显示的是
A)True B)False
C)1 D)出错信息
(11)如果要改变窗体的标题,则需要设置的属性是
A)Caption B)Name
C)BackColor D)BorderStyle
(12)以下能判断是否到达文件尾的函数是
A)BOF B)LOC
C)LOF D)EOF
(13)如果一个工程含有多个窗体及标准模块,则以下叙述中错误的是
A)如果工程中含有SubMain过程,则程序一定首先执行该过程
B)不能把标准模块设置为启动模块
C)用Hide方法只是隐藏一个窗体,不能从内存中清除该窗体
D)任何时刻最多只有一个窗体是活动窗体
(14)窗体的MouseDown事件过程
Form_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)
有4个参数,关于这些参数,正确的描述是
A)通过Button参数判定当前按下的是哪一个鼠标键
B)Shift参数只能用来确定是否按下Shift键
C)Shift参数只能用来确定是否按下Alt和Ctrl键
D)参数x,y用来设置鼠标当前位置的坐标
(15)假定有以下函数过程:
FunctionFun(SAsString)AsString
Dims1AsString
Fori=1ToLen(S)
s1=UCase(Mid(S,i,1))十s1
Nexti
Fun=s1
EndFunction
在窗体上画一个命令按钮,然后编写如下事件过程:
PrlvateSubCommmldl_Click()
DimStr1AsString,Str2AsString
Strl=inputbox(”请输入一个字符串”)
Str2=Fun(Strl)
PrintStr2
EndSub
程序运行后,单击命令按钮,如果在输入对话框中输入字符串“abcdefg”,则单击“确
定”按钮后在窗体上的输出结果为
A)abcdefgB)ABCDEFGC)gfedcbaD)GFEDCBA
(16)设有语句
open"c:
\Test.Dat"ForOutPutAs#1
则以下错误的叙述是
A)该语句打开C盘根目录下一个己存在的文件Test.Dat
B)该语句在C盘根目录下建立一个名为Test.Dat的文件
C)该语句建立的文件的文件号为1
D)执行该语句后,就可以通过Print#语句向文件Test.Dat中写入信息
(17)以下叙述中错误的是
A)用Shell函数可以调用能够在Windows下运行的应用程序
B)用Shell函数可以调用可执行文件,也可以调用VisualBasic的内部函数
C)调用Shell函数的格式应为:
<变量名>=Shell(……)
D)用Shell函数不能执行DoS命令
(18)以下关于过程及过程参数的描述中,错误的是
A)过程的参数可以是控件名称
B)用数组作为过程的参数时,使用的是“传地址”方式
c)只有函数过程能够将过程中处理的信息传回到调用的程序中
D)窗体可以作为过程的参数
(19)在窗体上画一个名称为TxtA的文本框,然后编写如下的事件过程:
PrivateSubTxta_KeyPress(keyasciiasinteger)
EndSub
若焦点位于文本框中,则能够触发KeyPress事件的操作是
A)单击鼠标B)双击文本框
C)鼠标滑过文本框D)按下键盘上的某个键
(20)目录列表框的Path属性的作用是
A)显示当前驱动器或指定驱动器上的路径
B)显示当前驱动器或指定驱动器上的某目录下的文件名
c)显示根目录下的文件名
D)只显示当前路径下的文件
(21)假定有如下事件过程:
PriVateSubForm_MouseDown(buttonAsInteger,ShiftAsInteger,xAsSingle,YAs
Single)
IfButton=2then
PopupMenupopForm
Endif
EndSub
则以下描述中错误的是
A)该过程的功能是弹出一个菜单
B)popForm是在菜单编辑器中定义的弹出式菜单的名称
C)参数X、Y指明鼠标的当前位置
D)Button=2表示按下的是鼠标左键
(22)以下能够正确计算n!
的程序是
A)PrivateSubCommandl_ClicK()
n=5:
x=1
Do
X=x*1
i=i十1
LoopWhilei<n
Printx
EndSub
B)PrivateSubCommandl_Click()
n=5:
x=1:
i=1
Do
X=X*1
i=i十1
LoopWhilei<n
Printx
EndSub
C)PrivateSubCommandl_Click()
n=5:
x=1:
i=1
Do
X=X*1
i=i十1
Loopwhilei<=n
Printx
EndSub
D)PrivateSubCommandl_C1ick()
n=5:
x=1:
i=1
Do
X=X*l
i=i十1
loopWhilei>n
Printx
EndSub
(23)在窗体上画一个名称为Commandl的命令按钮,再画两个名称分别为Labell、Label2
的标签,然后编写如下程序代码:
PrivatexAsInteger
PrivateSubCommandl—Click()
X=5:
Y=3
Callproc(x,Y)
Labell.Caption=X
Label2.Caption=Y
EndSub
PrivateSubproc(ByValaAsInteger,ByValbAshteger)
x=a*a
Y=b十b
EndSub
程序运行后,单击命令按钮,则两个标签中显示的内容分别是
A)5和3B)25和3C)25和6D)5和6
(24)在窗体上画一个名称为Commandl的命令按钮,一个名称为Labell的标签,然后
编写如下事件过程:
PrivateSubCommandl_C1ick()
S=0
Fori=1T015
x=2*i一1
1fxMod3=0Thens=s十1
Nexti
Labell.Caption=s
EndSub
.程序运行后,单击命令按钮,则标签中显示的内容是
A)1B)5C)27D)45
(25)在窗体上画一个名称为Commandl的命令按钮和三个名称分别为Labell、Label2、
Label3的标签,然后编写如下代码:
PrivatexAsInteger
PrivateSubCommand1_C1ick()
StaticyAsInteger
DimzAsInteger
n=10
z=n十z
y=y十z
X=X十Z
Labell.Caption=x
Label2.Caption=y
Label3.Caption=z
EndSub
运行程序,连续三次单击命令按钮后,则三个标签中显示的内容分别是
A)101010B)303030C)303010D)103030
(26)设在窗体上有一个名称为Commandl的命令按钮,并有以下事件过程:
PriVateSubCommandl_C1ick()
StaticbAsVariant
b=Array(1,3,5,7,9)
EndSub
此过程的功能是把数组b中的5个数逆序存放(即排列为9,7,5,3,1)。
为实现此功
能,省略号处的程序段应该是
A)Fori=0To5-1\2
tmp=b(i)
b(i)=b(5-i-1)
b(5-i-1)=tmp
Next
B)fori=0To5
tmp=b(i)
b(i)=b(5-i-1)
b(5-i-1)=tmp
Next
C)Fori=0T05\2
tmp=b(i)
b(i)=b(5-i-1)
b(5-i-1);tmp
Next
D)Fori=1T05\2
tmp=b(i)
b(i)=b(5一i一1)
b(5—i—1)=tmp
Next
(27)在窗体上画一个名称为Drivel的驱动器列表框,一个名称为Dirl的目录列表框,
一个名称为Filel的文件列表框,两个名称分别为Labell、Label2,标题分别为空白
和“共有文件”的标签。
编写程序,使得驱动器列表框与目录列表框、目录列表框
与文件列表框同步变化,并且在标签Labell中显示当前文件夹中文件的数量。
如图
所示。
能够正确实现上述功能的程序是
A)PrivateSubDirl_Change()B)PrivateSubDir1_Change()
Filel.Path=Dir1.pathFilel.path=dir1.Path
EndSubEndSub
PrivateSubDrivel_Change()PrivateSubDrive1_Change()
Dirl.Path=Drivel.DriveDirl.Path=Drivel.Drive
Labell.Caption=Filel.listCountLabell.Captlon=file1.list
EndSubEndSub
C)PrivateSubDirl_Change()D)PrivateSubDirl_Change()
Filel.Path=Dirl.Pathfilel.Path=Dir1.Path
Labell.Caption=Filel.ListCountLabell.Caption=Filel.List
EndSubEndSub
PrivateSubDrivel_Change()PrivateSubDrivel_Change()
Dirl.Path=Drivel.DrlveDir1.Path=Drivel.DrlVe
Labell.Caption=Filel.ListCountLabell.Caption=Filel.list
EndSubEndSub
(28)一个工程中包含两个名称分别为Forml、Form2的窗体,一个名称为mdlFunc的标准
模块。
假定在Forml、Form2和mdlFunc中分别建立了自定义过程,其定义格式为:
Forml中定义的过程:
PriVateSubfrmfunctionl()
EndSub
Form2中定义的过程:
PublicSubfrmffunction2()
EndSub
mdlFunc中定义的过程:
PubliCSubmdlFunction()
EndSub
在调用上述过程的程序中,如果不指明窗体或模块的名称,则以下叙述中正确的是
A)上述三个过程都可以在工程中的任何窗体或模块中被调用
B)frmfunction2和mdlfunction过程能够在工程中各个窗体或模块中被调用
C)上述三个过程都只能在各自被定义的模块中调用
D)只有mdlFunction过程能够被工程中各个窗体或模块调用
(29)窗体上有两个名称分别为Textl、Text2的文本框,一个名称为Commandl的命令
按钮。
运行后的窗体外观如图所示。
设有如下的类型声明
TypePerson
nameAsString*8
majorAsString*20
EndType
当单击“保存”按钮时,将两个文本框中的内容写入一个随机文件Test29.dat中。
设
文本框中的数据已正确地赋值给Person类型的变量p。
则能够正确地把数据写入文件
的程序段是
A)0pen”c:
\Test29.dat"ForRandomAs#1
Put#1,1,p
Close#1
B)Open"c:
\Test29.dat"ForRandomAs#1
Get#1,1,p
C10se#1
C)open"c\Test29.dat"ForRandomAs#1Len=Len(p)
Put#1,1,p
Close#1
D)Open"c:
\Test29.dat"ForRandomAs#1=Len(p)
Get#1,1,p
CloSe#1
(30)在窗体上画一个名称为CommonDialogl的通用对话框,一个名称为Commandl的
命令按钮。
要求单击命令按钮时,打开一个保存文件的通用对话框。
该窗口的标题
为"Save",缺省文件名为“SaveFile”,在“文件类型”栏中显示*.txt。
则能够满足
上述要求的程序是
A)PrivateSubCommand_C1ick()
Commondialogl.FileName=“Savefile”
Commondialogl.filter="AllFiles|*.*|(*.txt)|*.txt|(*.doc).|*.doc"
CommonDialogl.Filterindex=2
CommonDialogl.Dial0g.title="Save"
CommonDialogl.Action=2
EndSub
B)PrivateSubCommandl—Click()
CommonDialogl.FileName="SaveFile"
CommonDiaLogl.Filter="A11Files|*.*|(*.txt)|*.txt|*.doc|*.doc"
C0mmonDialogl.FilterIndex=1
CommonDialogl.DialogTitle="Save"
CommonDialogl.Action=2
EndSub
C)PrivateSubCmmandl_C1ick()
COmmonDialogl.FileName="Save"
CommonDialogl.FiLter="A11Files|*.*|(*.txt)|*.txt|(*.doc)|*.doc"
CommonDialogl.Filterindex=2
C0mmonDialogl.DialogTitle="SaveFile"
CommonDialogl.Action=2
EndSub
D)PrivateSubCommandl_C1ick()
CommonDialogl.FileName="SaveFile"
CommonDialogl.Filter="AllFiles|*.*|(*.txt)|*.txt|(*.doc)|*.doc"
CommonDialogl.FilterIndex=1
CommonDialogl.DialogTitle=“Save”
CommonDialogl.Action=1
EndSub
二、填空题(每空2分,共30分)
请将每空的正确答案写在答题卡[1]一[15序号的横线上,答在试卷上不得分。
(1)visualBasic中有一种控件组合了文本框和列表框的特性,这种控件是________
(2)VisualBasic提供的对数据文件的三种访问方式为随机访问方式_____和二进制访问
方式。
(3)执行下面的程序段后,变量S的值为_______。
S=5
Fori=2.6To4.9Step0.6
S=S十1
Nexti
(4)为了在运行时把d:
\pic文件夹下的图形文件a.jpg装入图片框Picturel,所使用的语
句为_______。
(5)计时器控件能有规律的以一定时间间隔触发_______事件,并执行该事件过程中的
程序代码。
(6)以下程序的功能是:
生成20个200到300之间的随机整数,输出其中能被5整除的
数并求出它们的和。
请填空。
PrivateSubCommandl_C1ick()
Fori=1To20
x=Int(____________*200+100)
If_______[7]=0Then
Printx
S=S十_________[83
EndIf
Nexti
Print“Sum=”:
S
EndSub
(7)设有如下程序
PrivateSubForm_Click()
DimaASInteger,bAsinteger
a=20:
b=50
pla,b
p2a,b
p3a,b
Print"a=";a,"b=";b
EndSub
Subpl(xAsInteger,ByValyAsInteger)
x=x十10.
v=v十20
EndSub
Subp2(byValxAsInteger,yAsInteger)
x=x十10
y=y十20
EndSub
Subp3(ByValxAsInteger,ByValyAsInteger)
x=x十10
y=y十20
EndSub
该程序运行后,单击窗体,则在窗体上显示的内容是:
a=______和b=______。
(8)在窗体上画一个名称为Commandl的命令按钮,编写如下事件过程
PRiVateSubCommandl_C1icK()
DimAsString
a=_____[11]
Fori=1To5
PrintSpace(6—i);Mid$3(a,6—i,2*i—1)
Nexti
EndSub
程序运行后,单击命令按钮,要求窗体上显示的输出结果为
456
34567
2345678
123456789
请填空。
(9)在窗体上画一个名称为Combo1的组合框,画两个名称分别Label1和Label2及Caption属性分别为“城市名称”和空白的标签。
程序运行后,当在组合框中输入一个新项后按回车键(ASCII码为13)时,如果输入的项在组合框的列表中不存在,则自动
添加到组合框的列表中,并在Label2中给出提示“已成功添加输入项