二级VISUAL+BASIC111.docx
- 文档编号:27113945
- 上传时间:2023-06-27
- 格式:DOCX
- 页数:17
- 大小:24.14KB
二级VISUAL+BASIC111.docx
《二级VISUAL+BASIC111.docx》由会员分享,可在线阅读,更多相关《二级VISUAL+BASIC111.docx(17页珍藏版)》请在冰豆网上搜索。
二级VISUAL+BASIC111
二级VISUALBASIC-11-1
(总分:
84.00,做题时间:
90分钟)
一、选择题(总题数:
25,分数:
46.00)
1.变量的类型可以用类型说明符来标识。
下列使用类型说明符不正确的是______。
(分数:
2.00)
A.zhx%
B.$DDD √
C.gzi!
D.sd@
解析:
[解析]变量的类型可以用类型说明符(%、&、#、!
、S、@)来标识,但必须将其放置在变量名的后面。
在选项B中“$”符号放置在变量前面不仅不符合类型说明符的规则,也不符合变量名的命名规则。
2.以下叙述中正确的是______。
(分数:
1.00)
A.在属性窗口只能设置窗体的属性
B.在属性窗口只能设置控件的属性
C.在属性窗口可以设置窗体和控件的属性 √
D.在属性窗口可以设置任何对象的属性
解析:
[解析]在属性窗口中只能设置窗体和各种控件的属性,故C选项正确。
3.用树状结构表示实体之间联系的模型是
(分数:
2.00)
A.关系模型
B.网状模型
C.层次模型 √
D.以上3个都是
解析:
[解析]在数据库系统中,由于采用的数据模型不同,相应的数据库管理系统(DBMS)也不同。
目前常用的数据模型有3种:
层次模型、网状模型和关系模型。
在层次模型中,实体之间的联系是用树状结构来表示的,其中实体集(记录型)是树中的结点,而树中各结点之间的连线表示它们之间的关系。
因此,本题的正确答案是C。
4.为了在按下回车键时执行某个命令按钮的事件过程,需要把该命令按钮的______属性设置为True。
(分数:
2.50)
A.Value
B.Cancel
C.Enabled
D.Default √
解析:
[解析]本题考查控件的常见属性。
对于所有具有Cancel属性的控件,Cancel表示该控件是否当按下“Esc”键时,执行某个事件过程。
Enabled表示控件是否可以使用,命令按钮的默认属性为Default,表示当按下回车键的时候,执行某个命令按钮的事件过程。
5.在窗体上画一个命令按钮和一个标签,其名称分别为Command1和Label1,然后编写如下事件过程:
PrivateSubCommand1_Click()
Counter=0
Fori=1To4
Forj=6To1Step-2
Counter=Counter+1
Nextj
Nexti
Label1.Caption=Str(Counter)
EndSub
程序运行后,单击命令按钮,标签中显示的内容是
(分数:
2.50)
A.11
B.12 √
C.16
D.20
解析:
[解析]本题考查的考点是有关循环的。
通过观察可以得知,在每次内循环中Counter的值会增加1,所以最终结果就是内循环执行的总次数。
由于内循环和外循环都是For循环,所以循环次数一定,外循环共执行4次,每次外循环中内循环都执行3次,故内循环执行的总次数为4*3=12次。
6.在窗体上画一个名称为Label1、标题为“VisualBasic考试”的标签,两个名称分别为Command1和Command2、标题分别为“开始”和“停止”的命令按钮,然后画一个名称为Timer1的计时器控件,并把其Interval属性设置为500,如右图所示。
编写如下程序:
PrivateSubForm_Load()
Timer1.Enabled=false
EndSub
PrivateSubCommand1_Click()
Timer1.Enabled=True
EndSub
PrivateSubTimer1_Timer()
IfLabel1.Left<WidthThen
Label1.Left=labell.Left+20
Else
Label1.Left=0
EndIf
EndSub
程序运行后单击“开始”按钮,标签在窗体中移动。
对于这个程序,以下叙述中错误的是____
(分数:
2.00)
A.标签的移动方向为自右向左 √
B.单击“停止”按钮后再单击“开始”按钮,标签从停止的位置继续移动
C.当标签全部移出窗体后,将从窗体的另一端出现并重新移动
D.标签按指定的时间间隔移动
解析:
[解析]本题考查Timer控件的使用。
Timer中Interval的单位为毫秒,设置为500意味着每隔0.5秒作用一次。
Timer的Enabled属性指示Timer控件是否可用。
同时本题还考查了对Label控件的属性的掌握:
Left属性为Label的左边界的坐标,Width为Label的宽度。
本程序中单击按钮后,Label1将每隔0.5秒向右移动,当移动到Left>width时,Label1重定位到窗体的左边界,然后继续移动。
选项A是错误的。
7.设有下列二叉树:
对此二叉树中序遍历的结果为
(分数:
2.00)
A.ABCDEF
B.DBEAFC √
C.ABDECF
D.DEBFCA
解析:
[解析]二叉树的遍历分为先序、中序、后序三种不同方式。
本题要求中序遍历,其遍历顺序应该为:
中序遍历左子树→访问根结点→中序遍历右子树。
按照定义,中序遍历序列是DBEAFC,故答案为B。
8.下列各组变量声明正确的是____。
(分数:
2.00)
A.Dimabcasinteger,numassingle √
B.DimI%,N$asinteger
C.Dima%,b%,c%,a$
D.publicdimn%
解析:
9.单击命令按钮时,下列的执行结果为
PrivateSubCommand1_Click()
DimxAsInteger,yAsInteger
x=86:
y=29
CallProc(x,y)
Printx;y
EndSub
PublicSubProc(nAsInteger,ByValmAsInteger)
n=nMod10
m=mMod10
EndSub
(分数:
1.00)
A.1232
B.629 √
C.23
D.123
解析:
[解析]考查考生对过程的理解程度。
【解属要点】在调用过程时,一般主调与被调过程之间有数据传递,即将主调过程的实参传递给被调用的过程,完成实参与形参的结合,然后执行被调过程,在VisualBasic中,实参与形参的结合有两种方式:
即传址与传值。
这两种方法的特点如下:
传址的结合过程是,当调用一个过程是,它将实参的地址传给形参,在被调用的过程中,对形参的任何操作都变成了对相应实参的操作,因此实参的值会随形参的改变而改变。
传值的结合过程是,当调用一个过程时,系统将实参的值赋值给形参并断开了联系,被调用过程中的操作时在形参自己的存储单元中进行的,当过程调用结束时,这些形参所占用的存储单元也同时被释放,因此在过程中对形参的任何操作不会影响实参。
而题中被调过程Proc中有两个形参,其中第一个形参n为传址方式,第二个形参m为传值方式。
主调过程分别把实参x、y传递给Proc,所以当过程调用结束后,实参x的值应随着被调过程变化而变化,而实参y值在主调函数中始终不变,所以输出y的值仍为29;在被调过程中"n=nModl0"被调用时,相当于“x=xModl0”,所以x的值最终为6。
10.在窗体上画一个命令按钮,其名称为Command1,然后编写如下事件过程:
PrivateSubCommand1_Click()
x=-3
IfSgn(x)Then
y=Sgn(x^2)
Else
y=Sgn(x)
EndIf
Printy
EndSub
程序运行后,单击命令按钮,其输出结果为______。
(分数:
3.00)
A.-3
B.9
C.-1
D.1 √
解析:
[解析]Sgn(number)函数的功能是返回number的正负号。
如果number>0,Sgn返回1;number=0,Sgn返回0;number<0,Sgn返回-1。
在本题中Sgn(-3)的返回值为-1,执行y=Sgn(x^2),结果y的值为10
11.在窗体上画一个命令按钮,然后编写如下事件过程:
PrivateSubCommand1_Click()
x=0
DoUntilx=-1
a=InputBox("请输入A的值")
a=Val(A)
b=InputBox("请输入B的值")
b=Val(B)
x=InputBox("请输入x的值")
x=Val(x)
a=a+b+x
Loop
Printa
EndSub
程序运行后,单击命令按钮,依次在输入对话框中输入5、4、3、2、1、-1,则输出结果为______。
(分数:
1.00)
A.2 √
B.3
C.14
D.15
解析:
[解析]本题需要注意的是每次循环开始的时候三个变量都被重新赋了一次值,所以最后的结果仅仅是2+1+(-1)。
所以最终的输出是2。
12.VB中有3个键盘事件:
KeyPress、KeyDown、KeyUp,若光标在Text1文本框中,则每输入一个字母____
(分数:
2.00)
A.这3个事件都会触发 √
B.只触发KeyPress事件
C.只触发KeyDown、KeyUp事件
D.不触发其中任何一个事件
解析:
[解析]每输入一个字符,经历了键盘上的字符被按下,又弹起,或再次被按下,又被弹起的过程,所以此过程涉及了KeyPress、KeyDown和KeyUp这三个过程。
13.用下面的语句所定义的数组的元素个数是:
______。
Dimarr(3To5,-2to2)
(分数:
1.00)
A.20
B.12
C.15 √
D.24
解析:
[解析]本题中的二维数组的元素数目等于3*5,共15个。
14.设a="VisualBasic",下面使b="Basic"的语句是
(分数:
2.00)
A.b=Left(a,8,12)
B.b=Mid(a,8,5) √
C.b=Right(a,5,5)
D.b=Left(a,8,5)
解析:
[解析]本题仍然考查字符串函数,字符串函数在VisualBasic考题中历年都占有很大的比重,考生应给予关注。
本题A、C、D项都发生了格式上的错误。
只有B项是正确的,Mid(a,8,5)是从a字符串的第8位开始截取5位,符合题意。
15.用黑盒技术测试用例的方法之一为
(分数:
1.00)
A.因果图 √
B.逻辑覆盖
C.循环覆盖
D.基本路径测试
解析:
[解析]黑盒测试主要方法有等价值划分法、边界值分析法、错误推测法、因果图法等。
白盒测试的主要方法有逻辑覆盖、基本路径测试循环覆盖等。
因此只有A属于黑盒测试。
16.为使程序运行时通用对话框Cd1上显示的标题为“对话框窗口”,若通过程序设置该标题,则应使用的语句是___________。
(分数:
2.00)
A.CD1.DialogTitle="对话框窗口" √
B.CD1.Action="对话框窗口"
C.CD1.FileName="对话框窗口"
D.CD1.Filter="对话框窗口"
解析:
17.在窗体上画一个名称为Commandl的命令按钮,再画两个名称分别为Labe11、Labe12的标签,然后编写如下程序代码:
PrivateXAsInteger
PrivateSubCommandl_Click()
X=5:
Y=3
Callproc(X,Y)
Labe11.Caption=X
Label2.Caption=Y
EndSub
PrivateSubproc(ByValaAsInteger,ByValbAsInteger)
X=a*a
Y=b+b
EndSub
程序运行后,单击命令按钮,则两个标签中显示的内容分别是____。
(分数:
2.00)
A.5和3
B.25和3 √
C.25和6
D.5和6
解析:
18.分布式数据库系统不具有的特点是______。
(分数:
2.00)
A.分布式
B.数据冗余 √
C.数据分布性和逻辑整体性
D.位置透明性和复制透明性
解析:
19.下列程序的执行结果是______。
k=0
Fori=1To3
a=i^i^k
Printa;
NextI
(分数:
2.00)
A.111 √
B.123
C.000
D.149
解析:
20.数据库设计的根本目标是要解决____。
(分数:
2.00)
A.数据共享问题 √
B.数据安全问题
C.大量数据存储问题
D.简化数据维护
解析:
[解析]从数据库的概念中可以看到,所谓数据库是指长期存储在计算机内的、有组织的、可共享的数据集合。
因此进行数据库设计的根本目标还是为了解决数据共享问题。
21.下面的程序运行结果是____。
PrivateSubForm_Click()
i=0
Do
i=i+1
ifi>10thenExitDo
LoopUntili<10
Printi
EndSub
(分数:
2.00)
A.0
B.1
C.10
D.11 √
解析:
22.已知代数式eXSin(30°)2x/(x+y)Lnx,则正确的VisualBasic表达式为____。
(分数:
2.00)
A.E^*Sin(30*3.14/180)*2*X/X+Y*Log(X)
B.Exp(X)*Sin(30)*2*X/(X+Y)*Ln(X)
C.Exp(X)*Sin(30*3.14/180)*2*x/(x+y)*Log(x) √
D.Exp(X)*Sin(30*3.14/180)*2*X/(X+Y)*Ln(X)
解析:
[解析]“Exp"’函数功能是计算e(e≈2.71828)的某次方,其格式为是Exp(number);“Sin"’函数指定参数的正弦值,它的参数是表示以弧度为单位的角的Double型数据:
“Log”函数得到某数的自然刘数值,正确的表达方式是Log(number);“30°”在计算机中应该写成30*3.14/180;并且各个表达式之间的乘号不能省略。
23.要建立一个随机文件记录学生的信息,如下定义了学生的记录类型,由学号、姓名、5门课程成绩(百分制)组成,下列的定义正确的是____。
(分数:
2.00)
A.TypestunoAsIntegernameAsStringscore(1To5)ASSingleEndType
B.TypestunoAsIntegernameAsString*10score()AsSingleEndType
C.TypestunoAsIntegernameAsString*10score(1To5)AssingleEndType √
D.TypestunoAsIntegernameAsStringscore()AsSingleEndType
解析:
[解析]可以用Type语句创建用户定义的类型,注意该语句必须置于模块的声明部分。
其格式如下:
Type数据类型名
数据类型元素名As类型名
数据类型元素名As类型名
EndType
在记录数据类型中的元素可以是变长字符串,也可以是定长字符串。
当在随机文件中使用时,必须使用定长字符串,一般格式是:
String*常量。
另外,在记录类型中不能使用动态数组。
24.设置组合框的风格,可用的属性是
(分数:
2.00)
A.Backstyle
B.Borderstyle
C.Style √
D.Sorted
解析:
[解析]Style属性返回或设置一个值,指定控件的行为或外观。
25.软件生命周期中所花费用最多的阶段是______。
(分数:
1.00)
A.详细设计
B.软件编码
C.软件测试
D.软件维护 √
解析:
[解析]软件生命周期分为软件定义、软件开发及软件运行维护3个阶段。
本题中详细设计、软件编码和软件测试都属于软件开发阶段:
维护是软件生命周期的最后一个阶段,也是持续时间最长,花费代价最大的一个阶段,软件工程学的一个目的就是提高软件的可维护性,降低维护的代价。
二、填空题(总题数:
13,分数:
38.00)
26.在运行时,MDI父窗体中的子窗体最小化时,其图标将显示在1。
(分数:
2.00)
解析:
MDI父窗体
27.在程序运行执行闲置循环过程中,程序的控制权被系统占用。
若要获得控制权,可以使用一个语句。
这样用户可以在获得系统的控制权后进行其他操作。
这个语句是1。
(分数:
2.00)
解析:
DoEvents
28.我国古代数学家张丘建在其著名的《算经》中提出了百鸡问题:
每只公鸡5元,每只母鸡3元,三只雏鸡1元;如何用100元买100只鸡,即公鸡、母鸡、雏鸡各多少只。
请在空白处填入适当的内容,将程序补充完整。
PrivateSubCommandl_Click()
DimCockAsInteger
DimHenAsInteger
DimChickAsInteger
Forml.Print“公鸡数”,“母鸡数”,“雏鸡数”
ForCock;0To20
ForHen=0To33
ForChick=0To100
If1Then
Form1.PrintCock,Hen,Chick
EndIf
NextChick
NextHen
NextCock
EndSub
(分数:
1.00)
解析:
Cock+Hen+Chick=100And5*Cock+3*Hen+ch/3=100
29.设a=10,b=9,c=8,则执行以下两条语句,变量b的值为1。
a=CInt(b/(10/(c/2)))
b=cModa
(分数:
2.00)
解析:
0
30.软件危机出现于60年代末,为了解决软件危机,人们提出了__1__的原理来设计软件,这就是软件工程诞生的基础。
(分数:
1.00)
解析:
软件工程学
31.一个栈的初始状态为空。
首先将元素5,4,3,2,1依次入栈,然后退栈一次,再将元素A,B,C,D依次入栈,之后将所有元素全部退栈,则所有元素退栈(包括中间退栈的元素)的顺序为1。
(分数:
2.00)
解析:
填1DCBA2345[解析]栈是限制仅在表的一端进行插入和删除的运算的线性表,通常称插入、删除的这一端为栈顶,另一端称为栈底。
32.简述下列程序的功能:
1。
SubForm_Load()
DimdAsDate
d=Now
Weekx=Weekday(d)
Weeky=WeekdayName(Weekx)
IfWeekx=1OrWeekx=7Then
Debug.Print"今天是:
";Weeky
Debug.Print"今天是休息日!
"
Else
Debug.Print"今天是:
";Weeky
Debug.Print"今天是工作日!
"
EndIf
EndSub
(分数:
2.00)
解析:
在立即窗口显示当天是星期几,并提示当天是工作日还是休息日。
33.数据库管理一般包含:
数据库的建立、数据库的调整、数据库的重组、数据库的安全性控制与完整性控制、数据库的__1__和数据库的监控。
(分数:
1.00)
解析:
故障恢复
34.__1__的功能是查看指定表达式的值。
(分数:
1.00)
解析:
监视窗口
在窗体上有一个命令按钮,然后编写如下程序:
FunctionTrans(ByValnumAsLong)AsLong
DimkAsLong
k=1
DOWhilenum
k=k*(numMod10)
num=num/10
Loop
Trans=k
Printtrans
EndFunction
PrivateSubCommand1_Click()
DimmAsLong
DimsAsLong
m=InputBox("请输入一个数")
s=Trans(m)
EndSub
程序运行时,单击命令按钮,在输入对话框中输入“789”,输出结果为10,在输入对话框中输入“987”输出11,在输入对话框中输入“879”,输出结果为12。
(分数:
18.00)
解析:
504[解析]关键字ByVal用来实现传值,也就是说在定义通用过程时,如果形参前面有关键字Byval,则该参数用传值方式传递,否则用传址方式传递;在Sub过程中,先将输入的“456”赋给变量m,m作为参数,调用Ttans过程;在nans过程中以num作为DoWhile的循环条件;在循环体中,调用Mod函数,将num的个位数字与k相乘,然后赋给k,第一次循环时,nun的值是789,所以k的值为9,执行num=hum/0后,num的值为78,循环3次后,num变为0,退出循环,k值等于9×8×7=504,并将k的值作为返回值;当输入“987”或“879”时执行相同的操作,结果都为504。
可以看出,此程序可用于求一个数值各位上数值的乘积。
解析:
504
解析:
504
35.如果在“立即”窗口中执行以下操作:
a=8
b=9
print(a>B);
则输出结果为1。
(分数:
2.00)
解析:
False[解析]a>b是一个逻辑表达式,其运行结果为False;Print方法不仅有打印的功能还兼有计算的功能,将表达式的值先运算后输出。
36.如果存在如下过程:
PrivateFunctionFun(a()AsInteger)
DimFirstAsInteger,LastAsInteger,iAsInteger
First=LBound(a)
Last=UBound(a)
Max=a(First)
Fori=FirstToLast
Ifa(i)>MaxThenMax=a(i)
Next
Fun=Max
EndFunction
在窗体上添加一个命令按钮,然后编写如下事件过程:
PrivateSubCommand1_Click()
ReDimm(1To4)AsInteger
m
(1)=20:
m
(2)=30:
m(3)=50:
m(4)=100
c=Fun(m)
PrintC
EndSub
单击命令按钮,其输出结果为__1__。
(分数:
2.00)
解析:
100[解析]在程序Sub中定义了一个含4个元素的数组,并且分别给它们赋值,数组上界是4,下界为1;将数组m作为实参调用Max事件过程,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 二级 VISUAL BASIC111