VB习题.docx
《VB习题.docx》由会员分享,可在线阅读,更多相关《VB习题.docx(14页珍藏版)》请在冰豆网上搜索。
VB习题
VisualBasic语言笔试试题
(共100分)
注意事项:
1.一、二、三题为客观题,请将答案做在机读答题卡上
2.四、五、六题为主观题,请将答案做在答题纸上
一、单项选择题(每题1分,共20分)
01.在VB中,对于没有赋值的数值变量,系统默认的值为:
(A)0(B)“0”(C)1(D)-1
02.对于以下程序段(其中Text1是一个文本框控件):
Text1=“你好”
Text1=“欢迎”
Text1.Visible=False
其运行结果为:
(A)Text1中显示:
你好 (B)Text1中显示:
欢迎
(C)Text1不可见 (D)Text1中显示:
你好欢迎
03.表达式4+5\6*7/8Mod9的值是:
(A)4(B)5(C)6(D)7
04.在VB中,以下可以获得焦点的控件是:
(A)图像框Image(B)标签Label
(C)计时器Timer(D)命令按钮CommandButton
05.函数表达式String(2,"Ok")的返回值是:
(A)2(B)Ok(C)OO(D)OkOk
06.下列属性中,为文本框的默认属性的是:
(A)Caption(B)Enabled(C)Name(D)Text
07.对窗体Form1编程,有Form1.BackColor=RGB(0,255,0)语句,则:
(A)窗体Form1的背景色被设置为红色
(B)窗体Form1的背景色被设置为黑色
(C)窗体Form1的背景色被设置成绿色
(D)窗体Form1的背景色被设置成蓝色
08.在VB中,未作任何申明,直接使用的变量的数据类型为:
(A)Integer (B)Long (C)String(D)Variant
09.下列事件中,由系统触发的窗体事件是:
(A)Click事件(B)DblClick事件
(C)Activate事件 (D)Timer事件
10.循环语句Fori=-3.5To20Step4决定循环体的执行次数为:
(A)4次(B)5次(C)6次(D)7次
11.在VB中,计时器Timer支持的事件为:
(A)Change(B)Scroll(C)Load(D)Timer
12.VisualBasic工程文件的扩展名是:
(A).Frm (B).Bas(C).Vbp (D).Vbw
13.下列语句中,可以完成打开二进制文件ABC.dat的操作语句是:
(A)Open“ABC.dat”ForInputAs#1
(B)Open“ABC.dat”ForOutputAs#1
(C)Open“ABC.dat”ForBinaryAs#1
(D)Open“ABC.dat”ForAppendAs#1
14.用VB绘制图形,能改变图形线条样式的属性是:
(A)ScaleWidth(B)DrawStyle
(C)BorderWidth(D)FillStyle
15.计时器Timer控件触发Timer事件的时间间隔为:
(A)每秒触发一次
(B)每隔InterVal属性中设定的时间触发一次
(C)每毫秒触发一次
(D)每隔Windows系统设定的时间间隔触发一次
16.在控件数组中,所有控件必须相同的属性是:
(A)Caption (B)Enabled(C)Index (D)Name
17.在窗体上画三个单选按钮,组成一个名为chkOption的控件数组。
用于标识各个控件数组元素的参数是:
(A)Tag(B)Index(C)ListIndex(D)Name
18.按下键盘的Shift键的同时,按下鼠标左键不放,并移动鼠标,在事件过程MouseMove中返回的Button、Shift参数的值为:
(A)Button=1,Shift=1
(B)Button=0,Shift=1
(C)Button=1,Shift=0
(D)Button=0,Shift=0
19.执行如下语句:
a=InputBox("Today","Tomorrow","Yesterday")
将显示的输入对话框是:
(A)
(B)
(C)
(D)
20.已在窗体上建立了一个文本框Text1,两个命令按钮Command1和Command2。
两个命令按钮的Caption属性分别为“12”和“34”。
执行下列代码后,文本框中显示的内容是:
Text1.Text=Command1.Caption
Command1.Caption=Command2.Caption
Command2.Caption=Text1.Text
Text1.Text=Command1.Caption&Command2.Caption
(A)1234(B)3412(C)12(D)34
二、多项选择题(每题1分,共10分)
(下面各小题有两个或两个以上正确答案,请选出全部正确答案,错选或漏选不得分)
01.下列符号中,是VB的算术运算符的有:
(A)%(B)&(C)Mod(D)And(E)\
02.在文本框Text1中输入字符,将输入的字符转换成大写并显示在标签Label1中,下列语句正确的有:
(A)Label1=UCase(Text1)
(B)Text1=Ucase(Label1)
(C)S=Text1.Text
Label1.Caption=UCase(S)
(D)Text1.Text=S
Label1.Caption=UCase(S)
(E)Label1.Caption=UCase(S)
S=Text1.Text
03.以下数据类型的变量所占存贮空间大于2个字节的有:
(A)Integer(B)Single
(C)Boolean(D)Currency
(E)Date
04.设要定义具有10个元素的数组b,下列语句正确的有:
(A)Dimb(1TO10)
(B)Dimb(-5TO5)
(C)Dimb()
n=10
Redimb(n)
(D)OptionBase1
Staticb(10)
(E)Dimb(10)
05.VisualBasic绘图时可以使用的度量单位有:
(A)Twip(B)Point(C)Pixel(D)Inch(E)Centimeter
06.产生一个[1~6]的随机整数的表达式为:
(A)Int(5*Rnd)+1(B)Int(6*Rnd+1)
(C)Int(6*Rnd)+1(D)Int(5*Rnd+1)
(E)Int(6*Rnd)
07.形状控件Shape的控件图形可选为:
(A)矩形Rectangle(B)正方形Square
(C)椭圆Oval(D)圆Circle
(E)三角形Triangle
08.确定一个窗体或控件位置的属性是:
(A)Width(B)Height(C)Top(D)Left(E)Enabled
09.下列显示结果为0的语句有:
(A)PrintRnd-Rnd(B)PrintRnd(0)-Rnd(0)
(C)PrintSgn(10)-Sgn(200)(D)PrintInt(Rnd)
(E)PrintRnd
(1)-Rnd
(1)
10.如果X能够实现上述功能的程序段有:
(A)IfXA=-15
PrintA
(B)IfXElseA=-15
PrintA
(C)IfXPrintA
(D)IfXA=15
Else
A=-15
PrintA
EndIf
(E)IfXA=15
Else
A=-15
EndIf
PrintA
三、判断分析题(每题1分,共10分)
(下列各小题的叙述是否正确,如正确,请选择“”;如错误,请选择“”)
01.要表示“a和b中至少有一个大于c”的逻辑表达式为:
a>cAndb>c。
02.在VisualBasic中有算术表达式、关系表达式和逻辑表达式,其中优先级别最高的是逻辑表达式。
03.在DoWhile…Loop语句实现的循环中,无论表达式的值如何,循环体至少被执行1次。
04.语句Line(500,500)–Step(100,-100),BF是错误的。
05.在运行程序时,滚动条的Value属性值一定界于Min属性值与Max属性值之间。
06.执行语句Dima,b,cAsInteger后,可将变量a、b、c的数据类型都设置成整型。
07.执行语句X=Y=5后,变量X与Y的值均为5。
08.在数据文件的操作中,所有文件的打开都用Open语句,而关闭都用Close语句。
09.设有数组说明语句:
Dima()AsInteger,则a被定义为动态数组。
10.函数Len(“100/5”)返回的值是20。
四、填空题(每题2分,共20分)
1.语句PrintNotFalseAndNot3+2>6的显示结果是______
______。
2.单精度数据类型对应的VB关键字为________
_______。
3.执行语句Line(100,100)-Step(50,100)后,CurrentX的值为_______
______
4.下面是一个验证素数的程序。
只能被1和本身整除的数称为素数。
PrivateSubForm_Click()
Dimn%,p%,x%
DimfAsBoolean
n=Val(InputBox("输入一个正整数(>1)"))
f=True
Forx=_________
________
If_______
_________
f=________
_______
ExitFor
EndIf
Nextx
If_______
______
Printn;"是素数"
Else
Printn;"不是素数"
EndIf
EndSub
5.
单击窗体,在窗体上显示下列图形:
PrivateSubForm_Click()
ForA=3To-3Step-1
N=_______
_______
PrintTab(15-N);
ForB=1ToN
Print___
____
Next___
____
Print
NextA
EndSub
五、读程序(每题4分,共20分)
1.运行下列程序,窗体上输出的结果是:
PrivateSubCommand1_Click()
Dimf(7)AsInteger,nAsInteger
f(0)=1:
f
(1)=1
Forn=2To7
f(n)=f(n-2)+f(n-1)
Nextn
Forn=0To7
IfnMod4=0ThenPrintf(n);
Nextn
EndSub
(A)14(B)15(C)04(D)05
2.下面程序执行结果为:
PrivateSubForm_Click()
DimiAsInteger,iSumAsInteger
Fori=1To4
iSum=sum(i)
PrintiSum;
Nexti
EndSub
PrivateFunctionsum(nAsInteger)
DimjAsInteger
j=j+n
sum=j
EndFunction
(A)1234 (B)13610
(C)1357(D)24810
3.PrivateSubForm_Click()
T=0
ForX=1To10
IfX=10Then
ExitFor
Else
T=T+X
EndIf
NextX
PrintT
EndSub
运行上述程序的输出结果为:
(A)10(B)36(C)45(D)55
4.执行以下程序段后,I的值为:
ForI=0To10Step-2
I=I+2
Next
(A)10 (B)-2 (C)0 (D)显示出错信息
5.按字符串变换命令按钮Command1,在标签框Label1中显示的结果是:
PrivateSubCommand1_Click()
X="等级考试"
L=Len(X)
SS=""
Fork=1ToL-1
S=Mid(X,k,1)
SS="*"+S+SS
Nextk
S=Mid(X,L,1)
SS=S+SS
Label1.Caption=SS
EndSub
(A)*等*级*考*试(B)等*级*考*试
(C)*试*考*级*等(D)试*考*级*等
六、编程题:
(每题10分,共20分)
01.编写程序计算由下列公式确定s的值。
要求:
按计算命令按钮Command1,计算S的值,结果显示在标签框Label1中。
按结束命令按钮Command2结束程序的运行。
02.有5支球队进行单循环赛,胜负场次如下:
球队编号
胜
平
负
积分
1001
1
2
1
1002
1
1
2
1003
2
1
1
1004
3
1
0
1005
0
1
3
胜一场得3分,平一场得1分,负一场得0分。
要求:
单击“计算”命令按钮Command1,算出每个队的积分。
求按上述格式显示在图片框Picture1中。
Picture1.PrintTab(10);"球队编号胜平负积分"'1分
Fori=1To5'3分
Forj=1To5
Picture1.PrintTab(j*10);s(i,j);
Nextj
Picture1.Print
Nexti
EndSub
VisualBasic语言笔试试题(答案)
(共100分)
一、单项选择题(每题1分,共20分)
01.A02.C03.B04.D05.C06.D07.C08.D09.C10.C
11.D12.C13.C14.B15.B16.D17.B18.A19.B20.B
二、多项选择题(每题1分,共10分)
01.CE02.AC03.BDE04.AD05.ABCDE
06.BC07.ABCD08.CD09.BCD10.CE
三、判断分析题(每题1分,共10分)
01.02.03.04.05.06.07.08.09.10.
四、填空题(每题2分,共20分)
1.
True
2.
Single
3.
150
4.
2Ton–1
nModx=0Then
False
fThen
5.
4–Sgn(A)*A
"M";
B
五、读程序(每题4分,共20分)
1.B2.A3.C4.C5.D
六、编程题:
(每题10分,共20分)
01.编写程序计算由下列公式确定s的值。
要求:
按计算命令按钮Command1,计算S的值,结果显示在标签框Label1中。
按结束命令按钮Command2结束程序的运行。
答案:
PrivateSubCommand1_Click()'1分
s1=0'1分
x=-1'1分
Fork=1To39Step2'4分
x=-x
s1=s1+x*(1/k)
Nextk
s=4*s1'1分
Label1.Caption=s'1分
EndSub
PrivateSubCommand2_Click()'1分
End
EndSub
02.有5支球队进行单循环赛,胜负场次如下:
球队编号
胜
平
负
积分
1001
1
2
1
1002
1
1
2
1003
2
1
1
1004
3
1
0
1005
0
1
3
胜一场得3分,平一场得1分,负一场得0分。
要求:
单击“计算”命令按钮Command1,算出每个队的积分。
求按上述格式显示在图片框Picture1中。
答案:
PrivateSubCommand1_Click()
Dims(5,5)AsInteger'1分
Fori=1To5'2分
Forj=1To4
s(i,j)=InputBox(Str(i)&","&Str(j))
Nextj
Nexti
Fori=1To5'3分
s(i,5)=s(i,2)*3+s(i,3)*1+s(i,4)*0
Nexti
Picture1.PrintTab(10);"球队编号胜平负积分"'1分
Fori=1To5'3分
Forj=1To5
Picture1.PrintTab(j*10);s(i,j);
Nextj
Picture1.Print
Nexti
EndSub