VB新练习题.docx
《VB新练习题.docx》由会员分享,可在线阅读,更多相关《VB新练习题.docx(26页珍藏版)》请在冰豆网上搜索。
![VB新练习题.docx](https://file1.bdocx.com/fileroot1/2023-1/29/837c5932-fd8a-43f9-8e66-bb3779b6c99e/837c5932-fd8a-43f9-8e66-bb3779b6c99e1.gif)
VB新练习题
第一章概论
一、选择题
1、不需要编译,计算机便可直接执行的程序是()。
A.C语言程序B.VisualBasic语言程序
C.汇编语言程序D.机器语言程序
2、下面关于VB的叙述中,不正确的是()。
A.VB是由美国Microsoft(微软)公司开发程序设计语言。
B.VB是在20世纪60年代美国Dartmouth学院开发的Basic语言基础上发展而形成的。
C.用VB编写的程序可以在任何操作系统环境中运行。
D.VB是面向对象的可视化的软件开发工具。
3、下面关于VB的集成开发环境(IDE)的叙述中,不正确的是()。
A.IDE是设计、调试、运行VB程序的工具。
B.打开/关闭各窗口的命令主要在IDE的“视图”菜单中。
C.“窗体设计”窗口是用来设计应用程序界面(窗体)的。
D.用户不能随意关闭IDE中的窗口。
4、一个具有图形用户界面的“标准EXE”工程必须包含的文件是()。
A.工程文件和窗体文件。
B.工程文件和标准模块文件。
C.窗体文件和标准模块文件。
D.工程文件和资源文件。
5、用一个对象模型来表示:
“一只白色的足球被踢进球门”,那么,白色、足球、踢、
进球门分别是()。
A.属性、对象、方法、事件
B.属性、对象、事件、方法
C.对象、属性、方法、事件
D.对象、属性、事件、方法
6、下面关于对象属性的叙述中,不正确的是()。
A.属性是对一个对象特征的描述。
B.属性都有名称、取值类型、值三个要素。
C.控件属性的值必须在设计时设置。
D.有些控件属性的值只能在程序运行时使用。
二、填空题
1、所谓指令就是计算机的控制器能够直接(识别并执行)的命令,这些指令是用一串二进制数码来表示的。
一种计算机的所有指令构成了它的指令集。
一种计算机的指令集构成了它的机器语言。
2、用计算机语言将解决问题的方法、步骤书写出来的文件就是(程序)。
3、将高级语言程序(源程序)转换成机器语言程序(可执行程序)的方式有两种,分别是解释方式和()方式。
4、假设某个工程有两个窗体,Form1和Form2,VB默认的启动窗体是()。
5、VB对象具有属性、方法、()三个要素。
三、判断题
1、不同类型的计算机(CPU)有不同的指令系统和汇编语言。
2、用汇编语言书写的程序计算机可以直接执行。
3、计算机不能执行高级语言程序。
4、用VB开发的应用程序只能在Windows操作系统环境下运行。
5、IDE的“属性窗口”用来设置控件的属性,它显示了控件的全部属性。
6、每个工程都有一个工程文件(*.VBP),它用来存储工程的属性及工程所包含的相关内容。
7、在IDE中将一个工程包含的全部内容存入磁盘后,不可以用Windows的重命名功能对其除工程文件之外的文件重命名。
8、工程的名称与工程文件的名称必须一致。
9、当一个工程包含多个窗体时,程序员可以设置某个窗体作为工程的启动窗体。
第二章VB编程入门
一、选择题
1、下列VB数据类型中,占用内存最少的是()。
A.BooleanB.IntegerC.ByteD.Currency
2、下列常量中,是Integer类型常量的是()。
A.-38844B.123C.123&D.32768
3、下面变量名称不正确的是()。
A.x1B.1xC.x_1D.x1y
4、下面变量名称正确的是()。
A.x□1B.integerC.x_1_yD.x,y
5、表达式16/4-2^5*8/4Mod5\2=()。
A.-6B.4C.-2D.0
6、数学式3≤X<5写成VB表达式是()。
A.3<=X<5B.3<=XorX<5
C.3<=XandX<5D.X>=3and<5
7、x=2,则表达式x+1>2Orsin(x)>0.9And3>x+3=()。
A.TrueB.FalseC.不能计算D.5
8、将逻辑型数据转换成整型数据时,转换规则是()。
A.将True转换为–1,将False转换为0
B.将True转换为1,将False转换为–1
C.将True转换为0,将False转换为-1
D.将True转换为1,将False转换为0
9、下面正确的赋值语句是()。
A.x+y=1B.x=y=1C.x=y+z1D.x+2=y^2+2
10、当窗体被关闭时,系统自动执行该窗体的()事件过程。
A.ClickB.LoadC.UnloadD.LostFocus
11、如果Print方法在窗体的Load事件过程中不起作用,原因是()属性值为false。
A.AutoRedraw(B)Moveable(C)MaxButton(D)ControlBox
12、若设置窗体的BorderStyle=1,则在程序运行时窗体的行为是()。
A.窗体没有最大化和最小化按钮,窗体既不能移动,也不能改变大小。
B.窗体没有最大化和最小化按钮,窗体可以移动,但不能改变大小。
C.窗体有最大化和最小化按钮,窗体既可以移动,也可以改变大小。
D.窗体有最大化和最小化按钮,窗体可以移动,但不能改变大小。
13、要使窗体运行时充满整个屏幕,应设置其()属性。
A.HeightB.WidthC.WindowStateD.AutoRedraw
二、填空题
1、把X是5或7的倍数写成VB表达式是()。
2、3.5\3+4mod3=()。
3、x、y有一个小于z的表达式为((X=Z)OR(Y=Z))。
4、数值型数据转换为逻辑(布尔)型数据时,()对应False,()对应True。
5、要使一个窗体显示出来,可以使用该窗体的()方法。
6、使一个控件获得“焦点”,可以使用该控件的()方法。
三、判断题
1、VB规定定长字符串的最大长度为32767。
2、系统自动把一个字符型变量的初值设置为空。
3、如果是数值型变量,则系统自动赋初值为0。
4、“空格”键对应的ASCII码是32。
5、窗体的CurrentX属性用来设置输出位置,在设计状态不可用。
四、请写出下列程序的运行结果
1、dimx%,y!
x=120:
y=3.14
Print“程序运行结果为:
”,
Print“x=”;x,“y=”;x+y
Print“谢谢”;spc(5);”欢迎下次使用”
第三章设计顺序结构程序
一、选择题
1、要使“命令按钮”在程序运行时不可见,可以将其()属性设置为False。
A.EnabledB.DefaultC.CancelD.Visible
2、要使标签控件的大小随Caption属性值而自动调整,应设置其()属性。
A.WidthB.AutoSizeC.CaptionD.Alignment
3、要设置标签控件字体的大小,应设置其()属性。
A.HeightB.WidthC.CaptionD.Font
4、要使标签控件标题内容居中显示,应设置其()属性。
A.AlignmentB.AppearanceC.BackStyleD.ToolTipText
5、程序运行时,要使用户不能修改文本框中的内容,那么应设置()。
A.Enabled=FalseB.MultiLine=False
C.Locked=TrueD.PasswordChar=”*”
6、当设置文本框的ScrollBars=Both而文本框确没有显示出滚动条,原因是()。
A.文本框中没有内容B.文本框的MultiLine=False
C.文本框的Locked=TrueD.文本框的MultiLine=True
7、程序运行时,要限制文本框的输入长度,那么应设置()。
A.EnabledB.MultiLineC.LockedD.MaxLength
8、要使鼠标指向“命令按钮”时,出现一个提示文本,应设置其()属性。
A.CaptionB.PictureC.ToolTipTextD.Style
9、使命令按钮获得“焦点”的方法是()。
A.LinkSendB.MoveC.SetFocusD.Refresh
10、一个窗体上有三个文本框,按放置顺序分别是:
Text1,Text2,Text3,若使程序运行时Text3首先获得“焦点”,那么,应设置其()属性值为0。
A.TopB.TagC.TabindexD.Index
11、一个窗体上有两个文本框,按放置顺序分别是:
Text1,Text2,要想在Text1中按“回车”键,“焦点”自动转到Text2上,应在()事件过程中编写程序。
A.PrivateSubText1_KeyPress(KeyAsciiAsInteger)
B.PrivateSubText1_LostFocus()
C.PrivateSubText2_GotFocus()
D.PrivateSubText1_Click()
12、假设窗体上有一个标签控件(Label1)和一个时钟控件(Timer),要想每隔1秒钟,在标签Label1上显示一次系统当前时间,应在()事件过程中编写实现该功能的程序。
A.PrivateSubLabel1_Change()
B.PrivateSubLabel1_Click()
C.PrivateSubLabel1_DblClick()
D.PrivateSubTimer1_Timer()
二、填空题
1、sin15
+
的VB表达式为(sin(3.14*15/180)+sqr(x+2.718^3)/abs(x-y)。
2、Int(-3.5)+Round(2.456,2)+Round(2.416)+Fix(3.6)=()。
3、函数Str()的功能是将()类型的数据转换成字符型数据。
4、函数Val()的功能是将()类型的数据转换成数值型数据。
5、“回车”键对应的字符是(chr(13))。
6、产生[50,100]之间随机整数的表达式为()。
7、Timer控件的Interval属性被用来设置时钟触发的时间间隔,单位是()。
8、程序的错误可分成三大类:
编译错误、逻辑错误和()。
三、判断题
1、语句End的功能是结束应用程序。
2、VB程序代码中用到的标点必须是英文的。
3、在一个控件的事件过程中编写的代码,只有在该控件发生此事件时,计算机才执行它。
四、写程序
1、编写一个程序,将一个三位整数以相反的顺序输出。
例如:
123,输出321。
2、编写一个程序计算圆的周长和面积
第四章设计分支结构程序
一、选择题
1、MsgBox()过程的正确语法是()。
A.MsgBox(提示信息[,标题][,按钮类型])
B.MsgBox(标题[,按钮类型][,提示信息])
C.MsgBox(标题[,提示信息][,按钮类型])
D.MsgBox(提示信息[,按钮类型][,标题])
2、InputBox$()函数返回值的数据类型是()。
A.数值型B.字符型C.变体型D.逻辑型
3、用if语句表示分段函数
不正确的程序段是()。
A.f=x^2+3B.ifx>=1then
ifx>=1thenf=sqr(x+1)
f=sqr(x+1)else
Endiff=x^2+3
Endif
C.ifx>=1thenD.ifx>=1then
f=sqr(x+1)f=sqr(x+1)
EndifEndif
f=x^2+3ifx<1then
f=x^2+3Endif
4、X是单精度类型变量,用Select语句表示下列处理的正确语句是()。
当0≤X<60时,输出“不及格”;当60≤X<70时,输出“及格”;
当70≤X<80时,输出“中”;当80≤X<90时,输出“良”;
当90≤X≤100时,输出“优”。
A.SelectcaseXB.SelectcaseX
Case0≤X<60Case0to59
Print“不及格”Print“不及格”
Case60≤X<70Case60to69
Print“及格”Print“及格”
Case70≤X<80Case70to79
Print“中”Print“中”
Case80≤X<90Case80to89
Print“良”Print“良”
Case90≤X≤100Case90to100
Print“优”Print“优”
CaseelseCaseelse
Print“不在转换范围内”Print“不在转换范围内”
EndSelectEndSelect
C.SelectcaseXD.SelectcaseX
Caseis<60Caseis<=100
Print“不及格”Print“优秀”
Caseis<70Caseis<90
Print“及格”Print“良好”
Caseis<80Caseis<80
Print“中”Print“中”
Caseis<90Caseis<70
Print“良”Print“合格”
Caseis≤100Caseis<60
Print“优”Print“不及格”
CaseelseCaseelse
Print“不在转换范围内”Print“不在转换范围内”
EndSelectEndSelect
5、下列if语句中,语法不正确的是()。
A.ifx>1thenprintxB.ifx+1>3thenprintx
else
print“error”
endif
C.ifx>1thenD.ifx>2then
printxy=x+1
ifx>2theny=x+1endif
endif
6、程序运行时,如果复选框被用户选中,那么其Value属性值为()。
A.0B.1C.TrueD.False
二、填空题
1、x=5,y=12,那么iif(x>y,x,y)=()
2、I=5,则choose(I,”+”,”-”,”*”,”/”)=()。
3、P(x,y)是直角坐标系中的一个点,表示P在第1或第3象限内的表达式为()。
三、判断题
1、在一个容器中的一组单选钮中,只能有一个被选中。
2、用鼠标双击“工具箱”中的控件,便可把一个控件放到“框架”控件内。
3、要把窗体中的某个控件放到框架内,不能通过直接拖动控件的方法。
4、如果设置框架的Visible属性值为False,那么框架内的所有控件都不可见。
四、运行结果
1、X=Int(Rnd)+3
Ifx^2>8theny=x^2+1
Ifx^2=9theny=x^2-2
Ifx^2<8theny=x^3
Printy
五、程序填空
1、下面的程序段是检查输入的算术表达式中园括号是否配对,并显示响应的结果。
本程序在文本框中输入表达式,边输入,边统计,以输入回车符作为表达式输入结束。
然后显示结果。
Dimcount1%‘在窗体的通用声明中定义
PrivateSubText1_KeyPress(KeyAsciiAsInteger)
If_________=”(”Then
count1=count1+1
elseif_____________=”)”Then
_____________
EndIf
IfKeyAscii=13Then
If_____________Then
Print“左右括号配对”
Elseif_____________Then
Print“左括号多于右括号”;count1;”个”
Else
Print“右括号多于左括号”;-count1;”个”
Endif
Endif
EndSub
2、输入若干字符,统计有多少个元音字母、多少个其他字母,直到按回车键结束,并显示结果,不区分字母的大小写。
变量countX存放元音字母个数,变量countY存放其他字母个数。
DimCountX%,CountY%‘在窗体的通用声明中定义
PrivateSubText1_KeyPress(KeyAsciiAsInteger)
DimST$
ST=__________________
If“A”<=STAndST<=”Z”Then
SelectCase____________
Case____________
CountX=CountX+1
Case_____________
CountY=CountY+1
EndSelect
EndIf
If_____________Then
Print“元音字母有”;CountX;”个”
Print“其他字母有”;CountY;”个”
EndIf
EndSub
六、程序设计
1、编写一个程序输入三个边长A、B、C,判断它们能否构成一个三角形(任何两个边长之和大于第三边),如果能则计算出它的面积。
:
面积=
,L=(A+B+C)/2
2、1、题目
设计一个程序,它由两个窗体构成,窗体Form1是登录窗体,如图一所示;窗体Form2是程序的主窗体,如图二所示。
程序运行时,首先出现“登录”窗体,当用户输入正确的用户名(假定:
用户名是student,密码是123456)并点击“确定按钮”时,程序开始验证其正确性。
如果正确,则关闭“登录”窗体并打开主窗体;否则让用户重新输入用户名和密码。
图一
图二
第五章设计循环结构程序
一、选择题
1、下面关于for…next循环的叙述中,不正确的说法是()。
A.省略步长,系统默认为:
步长是1。
B.循环变量必须是数值型。
C.循环体内必须有ExitFor语句。
D.如果初值大于终值,不能省略step步长,否则循环不能执行。
2、下面哪个程序不能正确显示1!
,2!
,3!
,4!
的值()。
A.fori=1to4B.fori=1to4
n=1forj=1toi
forj=1toIn=1
n=n*jn=n*j
nextjnextj
printnprintn
nextinexti
C.n=1D.n=1:
j=1
forj=1to4dowhilej<5
n=n*jn=n*j
printnprintn:
j=j+1
nextjloop
3、下列循环能正常结束的是()。
A.i=5B.i=1
dodo
i=i+1i=i+2
loopuntili<0loopuntili=10
C.i=10D.i=6
dodowhilei>0
i=i+1i=i+2
loopuntili>0loop
二、填空题
1、要使FORk=()to-5STEP-2语句循环20次,k的初值应是多少?
三、判断题
1、如果在ForNext语句中省略了Step步长,则系统默认为步长为1。
四、运行结果
1、dimI%,S%
s=0
forI=1to5step-1
s=s+i
nextI
print“s=”;s
2、dimI%,S%
s=0
forI=5to1
s=s+i
nextI
print“s=”;s
3、DimI%,n%
n=0
ForI=1To20Step2
I=I+2
n=n+1
NextI
Print“循环执行次数=”;n,“退出循环时,循环控制变量的值=”;I
4、DimI%,J%
FORI=1TO5
PrintSpc(I);
FORJ=ITO5
Print“▼”;
NEXTJ
Print
NEXTI
5、dima%,b%,I%,j%,s$
b=10:
a=3
forI=btoastep-2
b=a+b
a=a+b
s=”*”
forj=btoastep-1
s=s&“*”
print“在J循环内打印的内容是:
”;s
nextj
print“在I循环内打印的内容是:
”;s
nexti
五、程序填空
1、下面是一个求100以内的素数的程序。
每行输出5个素数。
DimI%,j%,m%,pdasBoolean
ForI=2to100
Pd=true
Forj=2toI-1
IfImodj=0then
Pd=________
Exitfor
Endif
Nextj
Ifpdthen
________
M=M+1
IfMmod5=0then
_________
Endif
Endif
NextI
2、下面是一个计算S=1+(1+2)+(1+2+3)+…+(1+2+…+n)的程序,程序运行时,用户输入n的值,程序便可计算出S的值并显示出来。
请在程序中的下划线处填上适当的语句,使程序完整。
DimI%,J%,n%,T!
S!
n=val(inputbox(“请输入n的值”))
T=0
___________
ForI=1ton
T=T+I
_______________
NextI
Print“S=”;S
3、下面是一个用辗转相除法求两个正整数A,B的最大公因数的程序,请在下划线处填上正确的语句。
DimA%,B%,R%,
A=Val(InputBox(“请输入A=”))
_________________________
ifA___________________
Endif
Do
R=AModB
IfR=0then
__________________
Endif
A=B
B=R
Loop
Print“最大公因数是:
”;_________________
4、下面程