VB程序设计复习资料.docx
《VB程序设计复习资料.docx》由会员分享,可在线阅读,更多相关《VB程序设计复习资料.docx(54页珍藏版)》请在冰豆网上搜索。
VB程序设计复习资料
一、判断题(每题1分,共10分)
()1.由VisualBasic语言编写的应用程序有解释和编译两种执行方式。
()2.文本框控件的MaxLength属性值为0时,在文本框内不可以输入任何字符。
()3.要使输入文本框的字符始终显示“#”,则应修改其PasswordChar属性为“#”。
()4.在一个窗体中不能使用Unload来卸载本窗体,即一个窗体只能由其它窗体卸载。
()5.VB的Double类型数据,可以精确表示其数值范围内的所有实数。
()6.在图片框中添加的控件,其Top和Left属性值是相对图片框而言的,与窗体无关。
()7.命令按钮不但能响应单击事件,而且还能响应双击事件。
()8.在自定义函数过程中,函数名必须被赋值。
()9.文本框控件只能响应KeyPress、KeyDown、KeyUp、Change事件。
()10.如果一个菜单项的Visible属性为False,则它的子菜单也会显示。
二、单选题(每题2分,共20分)
()11.要改变控件的高度,应修改控件的_______属性。
A、TopB、LeftC、HeightD、Width
()12.VB算术运算符乘或除、整除、求余的优先级,从高到低依次为_______。
A、乘或除、求余、整除B、乘或除、整除、求余
C、整除、求余、乘或除D、整除、乘或除、求余
()13.下列哪个属性用来表示标签(Label)的内容和窗体(Form)的标题_______。
A、CaptionB、TextC、LeftD、Name
()14.判断整型变量m能否被n整除的VB表达式为_______。
A、nModm=0B、m/n*n=mC、mModnD、m\n*n=m
()15.选中复选框控件时,Value属性的值为_______。
A、TrueB、FalseC、0D、1
()16.在窗体Form1的一个事件过程中,使用_______来清除窗体上所绘制的图形的方法是不正确的。
A、Form1.ClsB、Form.ClsC、Me.CLSD、Cls
()17.设计动画时通常用时钟控件_______属性来控制动画速度。
A、IntervalB、TimerC、MoveD、Enabled
()18.使用Circle方法不可以绘制的图形是_______。
A、圆角矩形B、椭圆C、圆饼图D、扇形
()19.运行时组合框控件Comb1中所选择的表项,可以表示为_______。
A、Comb1.TextB、Comb1.ListIndexC、Comb1.ListD、Comb1.ListCount
()20.若i的初值为9,则下列循环语句的循环次数为_______次。
DoWhilei<=20
i=i+3
Loop
A、3次B、4次C、5次D、6次
三、程序填空题(每空2分,共20分)
1.【程序说明】以下程序产生30个两位随机整数、并按从小到大的顺序存入数组a中,再将其中的奇数按从小到大的顺序在窗体中用紧凑格式输出。
PrivateSubForm_Click()
Dima(30)Asbyte,iasByte,jAsByte,mAsByte
Fori=1To30
a(i)=(21)
Nexti
Fori=1To29
Forj=(22)
Ifa(i)>a(j)Thenm=a(i)
(23)
a(j)=m
Nextj
Nexti
Fori=1To30
If(24)Then(25)
Nexti
EndSub
(21)(22)(23)(24)(25)
2.【程序说明】下列程序运行时,单击Command1(0)后,图片每秒自动左移1毫米,单击Command1
(1)停止移动(当图片尾部移出窗体后,图片从窗体右端进入窗体)。
界面设计如下图1所示。
图1程序2的界面设计
【程序】
PrivateSubCommand1_Click(IndexAsInteger)
IfIndex=0Then(26)ElseTimer1.Enabled=False
EndSub
PrivateSubForm_Load()
Timer1.Interval=(27)
Form1.ScaleMode=6
(28)
EndSub
PrivateSubTimer1_Timer()
Picture1.Left=(29)
IfPicture1.Left+Picture1.Width<=Form1.ScaleLeftThen_
(30)=Form1.ScaleLeft+Form1.ScaleWidth
EndSub
(26)(27)
(28)(29)(30)
四、程序阅读题(每小题5分,共20分)
程序31、请写出单击窗体三次后,窗体上的显示结果。
PrivateSubForm_Click()
StaticaAsInteger
DimbAsInteger
b=a+b+2
a=a+b
Form1.Print"a=";a,"b=";b
EndSub
程序32、请写出单击窗体后,窗体上的显示结果。
PrivateSubForm_Click()
Fori%=1To7
PrintSpc(7-i);
Forj%=1To(2*i%)-1:
Print"M";:
Nextj%
Print
Nexti%
EndSub
程序33、写出程序运行时,单击Option1
(2)后,窗体上的显示结果。
PrivateSubForm_Load()
Option1(0).Value=False
Option1
(1).Value=False
Option1
(2).Value=False
EndSub
PrivateSubOption1_Click(IndexAsInteger)
IfOption1(Index).Value=TrueThen
SelectCaseIndex
Case0
Check1(0).Value=1:
Check1
(1).Value=0
Case1
Check1(0).Value=0:
Check1
(1).Value=1
Case2
Check1(0).Value=1:
Check1
(1).Value=1
EndSelect
IfCheck1(0).Value=1ThenPrint"您好"
IfCheck1
(1).Value=1ThenPrint"欢迎使用VisualBasic!
"
EndIf
EndSub
程序34、设Text1.Text为"abcdef",运行时连续单击3次控件HScroll1右侧箭头后,分别写出组合框控件中的第1项、第2项及第3项的内容。
PrivateSubForm_Load()
HScroll1.SmallChange=1:
HScroll1.Max=5
HScroll1.Min=1:
HScroll1.Value=1
Combo1.Clear
EndSub
PrivateSubHScroll1_Change()
Combo1.AddItemLeft(Text1.Text,HScroll1.Value),0
EndSub
五、程序设计题(每题10分,共30分)
35.编制事件过程Command1_Click,执行该过程时输入n以及n个数,计算这n个数的和并在文本框控件Text1中显示。
(10分)
36.编制通用函数过程fsum,计算Single类型一维数组所有元素的和。
(10分)
37.在窗体上建立命令按钮“Command1”(显示)和“Command2”(退出)。
运行时,“Command2”按钮始终显示“退出”;单击“显示”按钮后窗体上显示“欢迎使用VisualBasic!
”同时标题改为“清除”,再单击“清除”按钮后,界面恢复窗体装入时的初态。
(10分)
试题一、判断题(每小题1分,共10分)
1.√2.×3.√4.×5.×6.√7.√8.√9.×10.×
试题二、单选题(每小题2分,共20分)
11.C12.B13.A14.D15.D16.B17.A18.A19.C20.B
试题三、程序填空题(每空2分,共20分)
21.Int(Rnd*90)+1022.i+1To3023.a(i)=a(j)24.a(i)Mod2<>025.Printa(i);26.Timer1.Enabled=True27.100028.Timer1.Enabled=False29.Picture1.Left-130.Picture1.Left
试题四、程序阅读题(每小题5分,共20分)
31.a=2b=2
a=6b=4
a=14b=8
32.M
MMM
MMMMM
MMMMMMM
MMMMMMMMM
MMMMMMMMMMM
MMMMMMMMMMMMM
33.您好
欢迎使用VisualBasic!
34.abcdabcab
试题五、程序设计题(每小题各10分,共30分)
35.编制事件过程Command1_Click,执行该过程时输入n以及n个数,计算这n个数的和并在文本框控件Text1中显示。
PrivateSubCommand1_Click()
DimsAsSingle,nAsInteger,xAsSingle
n=InputBox("输入n")
Fori=1Ton
x=InputBox("x="):
s=s+x
Nexti
Text1.Text=s
EndSub
36.编制通用函数过程fsum,计算Single类型一维数组所有元素的和。
PrivateFunctionfsum(a()AsSingle,nAsSingle)AsSingle
DimiAsInteger
Fori=1Ton
fsum=fsum+a(i)
Nexti
EndFunction
37.在窗体上建立命令按钮“Command1”(显示)和“Command2”(退出)。
PrivateSubCommand1_Click()
IfCommand1.Caption="显示"Then
Print"欢迎使用VisualBasic!
":
Command1.Caption="清除"
Else
Form1.Cls:
Command1.Caption="显示"
EndIf
EndSub
PrivateSubCommand2_Click()
End
EndSub
PrivateSubForm_Load()
Form1.Cls:
Command1.Caption="显示"
EndSub
一、判断题(每题1分,共10分)
()1.VB是以结构化的Basic语言为基础、以事件驱动作为运行机制的可视化程序设计语言。
()2.用DIM定义数值变量时,该数值变量自动赋初值为0。
()3.移动框架时框架内控件也跟随移动,因此框架内控件的Left和Top属性值也随之改变。
()4.列表框和文本框一样均没有Caption属性,但都具有Text属性。
()5.图片框可以通过Print方法来显示文本。
()6.语句“FontName="宋体"”与“Form1.FontName="宋体"”的作用完全相同,无一例外。
()7.SetFocus方法是把焦点移到指定对象上,使对象获得焦点,该方法适用于所有控件。
()8.由于定时器控件在运行时是不可见的,因此在设置时可任意地将其放在任何位置。
()9.表示各控件对象的变量名的属性为Caption。
()10.决定对象是否可见的属性是Visible属性,决定对象可用性的属性是Enabled属性。
二、单选题(每题2分,共20分)
()11.下列哪个属性用来表示各对象(控件)的位置_______。
A、TextB、CaptionC、LeftD、Name
()12.List1.Clear中的Clear是_______。
A、方法B、对象C、属性D、事件
()13.将文本框控件的_______属性设置为True,可正常显示文本但不可编辑。
A、LockedB、EnabledC、MultiLineD、Visible
()14.取字符串Ax从第1个非空格符开始的连续5个字符,写作表达式_______。
A、Mid(Ax,1,5)B、Left(Trim(Ax),5)
C、Left(Ax,5)D、Mid(Trim(Ax),5)
()15.数学式(x+5)1/3写成VB表达式是_______。
A、(x+5)^1/3B、(x+5)^(1\3)C、(x+5)^1\3D、(x+5)^(1/3)
()16.要使Shape控件以实心方式填充,应该设置其_______属性。
A、FillColorB、FillStyleC、BackStyleD、Shape
()17.将命令按钮Command1设置为不可见,应修改该命令按钮的_______属性。
A、VisibleB、ValueC、CaptionD、Enabled
()18.将变量x、y中的最大数赋值给变量a,正确的表示为_______。
A、a=Ify>xThenyElsexB、Ify>xThena=y:
a=x
C、a=x:
Ify>xThena=yD、Ify>xThena=yElsea=xEndIf
()19.文本框控件Text4的Text属性默认值为_______。
A、Text4B、"Text4"C、LockedD、Name
()20.描述以(1000,1000)为圆心、以400为半径画1/4圆弧的语句,正确的是_______。
A、Circle(1000,1000),400,0,3.1415926/2
B、Circle(1000,1000),,400,0,3.1415926/2
C、Circle(1000,1000),400,,0,3.1415926/2
D、Circle(1000,1000),400,,0,90
三、程序填空题(每空2分,共20分)
1.【程序说明】利用一个计时器、一个标签框和二个命令按钮制作一个动态秒表,如图1所示。
单击“开始”命令按钮,秒表开始计时,单击“结束”命令按钮,秒表结束计时,并在标签框显示运行时间,如“运行了0小时2分10秒”。
(假设对象的属性都在程序代码中设定)
图1动态秒表
程序代码如下:
DimxAsLong
DimhAsInteger,mAsInteger,sAsInteger
PrivateSubForm_Load()
Form1.Caption="动态秒表(小时:
分:
秒)"
Command1.Caption="开始"
Command2.Caption="结束"
Label1.Alignment=”Center”
Label1.Caption="0:
0:
0"
Timer1.Interval=(21)
Timer1.Enabled=False
x=0
EndSub
PrivateSubCommand1_Click()
(22)
EndSub
PrivateSubCommand2_Click()
Timer1.Enabled=False
x=(23)
Label1.Caption="运行了"+Str(h)+"小时"+Str(m)+_
"分"+Str(s)+"秒"
EndSub
PrivateSubTimer1_Timer()
(24)
h=x\3600
m=(xMod3600)\60
s=(25)
Label1.Caption=Str(h)+":
"+Str(m)+":
"+Str(s)
EndSub
(21)(22)(23)(24)(25)
2.【程序说明】本程序将1个大于100的偶数n分解为2个素数之和。
其中nflag逻辑型函数用于判断自然数x是否为素数。
PrivateSubForm_Click()
DimnAsInteger,xAsInteger,yAsInteger
n=Val(InputBox(”请输入1个大于100的偶数”,”输入数据”,100))
Forx=3Ton\2Step2
Ifnflag(x)Then
y=(26)
Ifnflay(y)Then
Form1.Printn;”=”;x;”+”;y:
ExitFor
EndIF
EndIf
(27)
EndSub
Functionnflag(xAsInteger)
DimflagAsBoolean
k=2:
m=Int(Sqr(x))
flag=(28)
DoWhilek<=m
IfxModk=0Thenflag=False
(29)
Loop
nflag=(30)
EndFunction
(26)(27)
(28)(29)(30)
四、程序阅读题(每小题5分,共20分)
程序31、写出程序运行时单击窗体后,Form1上的输出结果。
PrivateSubForm_click()
Dimxasstring
Dimiasinteger,nasinteger
Form1.cls
x=”ABCDEFGHKL”
n=len(x)
fori=nto1step-2
Form1.PrintTab(20-i);Mid(x,i,1)
Nexti
Endsub
程序32、执行下列事件过程时,写出窗体上的显示结果。
PrivateSubCommand1_Click()
DimxAsLong,iAsInteger
x=60
i=2
DoWhilex>1
IfxModi=0ThenPrinti;:
x=x\iElsei=i+1
Loop
EndSub
程序33、顺序写出运行时在文本框控件Text1中输入abcd后,列表框控件List1中的各表项。
DimsAsString
PrivateSubForm_Load()
List1.Clear
Text1.Text=""
EndSub
PrivateSubText1_Change()
s=s+Text1.Text
List1.AddItems
EndSub
程序34、运行下面程序,并输入数据分别为129,32,53时,写出label1显示的内容。
PrivateSubForm_Click()
DimaAsInteger
a=Val(InputBox("请输入数据","",100))
SelectCaseamod5
CaseIs<4
w=a+10
CaseIs<2
w=a*2
CaseElse
w=a-10
EndSelect
Label1.Caption="w="&Str(w)
EndSub
五、程序设计题(每题10分,共30分)
35.随机产生n个两位正整数(n由输入对话框输入,且0(10分)
36.编程,输入x值,按下式计算并输出y值。
(10分)
37.在窗体上建立4个命令按钮Command1、Command2、Command3和Command4,运行结果如下图2。
(10分)
要求:
命令按钮的Caption属性分别为“字体变大”、“字体变小”、“加粗”和“标准”。
每单击Command1按钮和Command2按钮一次,字体变大或变小3个单位。
单击Command3按钮时,字体变粗;单击Command4按钮时,字体又由粗体变为标准。
4个按钮每单击一次都在窗体上显示“欢迎使用VB”。
双击窗体后可以退出。
图2运行后的显示结果
试题一、判断题(每小题1分,共10分)
1.√2.√3.×4.×5.√6.×7.×8.√9.×10.√
试题二、单选题(每小题2分,共20分)
11.C12.A13.A14.B15.D16.D17.A18.C19.B20.C
试题三、程序填空题(每空2分,共20分)
21.100022.Timer1.Enabled=True23.024.x=x+12<>0
25.s=xMod3600Mod6026.n-x27.nextx28.flag=true
29.k=k+130.flag
试题四、程序阅读题(每小题5分,共20分)
31.L32.2235
H
F
D
B
33.a
aab
aababc
aababcabcd
34.w=119
w=42
w=63
试题五、程序设计题(每小题各10分,共30分)
35.随机产生n个两位正整数(n由输入对话框输入,且0(10分