全国计算机等级考试二级VB语言笔试试题及答案.docx
《全国计算机等级考试二级VB语言笔试试题及答案.docx》由会员分享,可在线阅读,更多相关《全国计算机等级考试二级VB语言笔试试题及答案.docx(29页珍藏版)》请在冰豆网上搜索。
全国计算机等级考试二级VB语言笔试试题及答案
2005年9月
全国计算机等级考试二级笔试试卷
公共基础知识和VisualBasic语言程序设计
(考试时间
90分钟,满分
100分)
一、选择题(每小题2分,共70分)
下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。
请将正确选项填涂在答题
卡相应位置上,答在试卷上不得分。
(1)下列叙述中正确的是
A.程序设计就是编制程序
C.程序经调试改错后还应进行再测试
C。
B.程序的测试必须由程序员自己去完成
D.程序经调试改错后不必进行再测试
(2)下列数据结构中,能用二分法进行查找的是A.顺序存储的有序线性表B.线性链表
A
C.二叉链表
。
D.有序线性链表
(3)下列关于栈的描述正确的是
C
。
A.在栈中只能插入元素而不能删除元素
B.在栈中只能删除元素而不能插入元素
C.栈是特殊的线性表,只能在一端插入或删除元素
D.栈是特殊的线性表,只能在一端插入元素,而在另一端删除元素
(4)下列叙述中正确的是D。
A.一个逻辑数据结构只能有一种存储结构
B.数据的逻辑结构属于线性结构,存储结构属于非线性结构
C.一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率D.一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率
(5)下列描述中正确的是C。
A.软件工程只是解决软件项目的管理问题
B.软件工程主要解决软件产品的生产率问题
C.软件工程的主要思想是强调在软件开发过程中需要应用工程化原则
D.软件工程只是解决软件开发中的技术问题
(6)在软件设计中,不属于过程设计工具的是
D
。
A.PDL(过程设计语言)
B.PAD图
C.N-S图D.DFD图
(7)下列叙述中正确的是
A
。
A.软件交付使用后还需要进行维护
B.软件一旦交付使用就不需要再进行维护
C.软件交付使用后其生命周期就结束
D.软件维护是指修复程序中被破坏的指令
(8)数据库设计的根本目标是要解决
A
。
A.数据共享问题
B.数据安全问题
C.大量数据存储问题D.简化数据维护
(9)设有如下关系表:
R
S
T
A
B
C
A
B
C
A
B
C
1
1
2
3
1
3
1
1
2
2
2
3
2
2
3
3
1
3
则下列操作中正确的是B。
A.T=R∩SB.T=R∪SC.T=R×SD.T=R/S
(10)数据库系统的核心是B。
A.数据模型B.数据库管理系统C.数据库D.数据库管理员
(11)假定一个VisualBasic应用程序由一个窗体模块和一个标准模块构成。
为了保存该应
用程序,以下正确的操作是B。
A.只保存窗体模块文件B.分别保存窗体模块、标准模块和工程文件
C.只保存窗体模块和标准模块文件D.只保存工程文件
(12)为了清除窗体上的一个控件,下列正确的操作是C。
A.按回车键
B.按Esc键
C.选择(单击)要清除的控件,然后按Del键
D.选择(单击)要清除的控件,然后按回车键
(13)以下叙述中错误的是C。
A.打开一个工程文件时,系统自动装入与该工程有关的窗体、标准模块等文件
B.当程序运行时,双击一个窗体,则触发该窗体的DblClick事件
C.VisualBasic应用程序只能以解释方式执行
D.事件可以由用户引发,也可以由系统引发
(14)设a=2,b=3,c=4,d=5,下列表达式的值是D。
Nota<=cOr4*c=b^2Andb<>a+c
A.-1B.1C.TrueD.False
(15)设a=5,b=10,则执行c=Int((b-a)*Rnd+a)+1后,c值的范围为C。
A.5~10B.6~9C.6~10D.5~9
(16)在窗体上画一个命令按钮,名称为Command1,然后编写如下事件过程:
PrivateSubCommand1_Click()
a$="softwareandhardware"
b$=Right(a$,8)
c$=Mid(a$,1,8)
MsgBoxa$,b$,c$,1
EndSub
2
运行程序,单击命令按钮,则在弹出的信息框的标题栏中显示的是
C
。
A.softwareandhardware
B.software
C.hardware
D.-1
(17)在窗体上画一个命令按钮和一个文本框,其名称分别为
Command1
和
Text1,把文本
框的Text属性设置为空白,然后编写如下事件过程:
PrivateSubCommand1_Click()
a=InputBox("Enteraninteger")
b=InputBox("Enteraninteger")
Text1.Text=b+a
EndSub
程序运行后,单击命令按钮,如果在输入对话框中分别输入容是A。
8和
10,则文本框中显示的内
A.108
B.18
C.810
D.出错
(18)在窗体上画两个文本框,其名称分别为
Text1和
Text2,然后编写如下程序:
PrivateSubForm_Load()
Show
Text1.Text=""
Text2.Text=""
Text1.SetFocus
EndSub
PrivateSubText1_Change()
Text2.Text=Mid(Text1.Text,8)
EndSub
程序运行后,如果在文本框Text1中输入BeijingChina,则在文本框Text2中显示的内容是
B。
A.BeijingChinaB.ChinaC.BeijingD.BeijingC
(19)在窗体上画一个列表框和一个命令按钮,其名称分别为
List1
和
Command1,然后编
写如下事件过程:
PrivateSubForm_Load()
List1.AddItem"Item1"
List1.AddItem"Item2"
List1.AddItem"Item3"
EndSub
PrivateSubCommand1_Click()
List1.List(List1.ListCount)="AAAA"
EndSub
程序运行后,单击命令按钮,其结果为
B
。
A.把字符串“AAAA”添加到列表框中,但位置不能确定
B.把字符串“AAAA”添加到列表框的最后(即“Item3”的后面)
C.把列表框中原有的最后一项改为“AAAA”
D.把字符串“AAAA”插入到列表框的最前面(即“Item1”的前面)
(20)假定有如下事件过程:
PrivateSubForm_Click()
DimxAsInteger,nAsInteger
x=1
n=0
DoWhilex<28
x=x*3
n=n+1
Loop
Printx,n
EndSub
程序运行后,单击窗体,输出结果是A。
A.814B.563C.281D.2435
(21)有如下程序:
PrivateSubForm_Click()
DimCheck,Counter
Check=True
Counter=0
Do
DoWhileCounter<20
Counter=Counter+1
IfCounter=10Then
Check=False
ExitDo
EndIf
Loop
LoopUntilCheck=False
PrintCounter,Check
EndSub
程序运行后,单击窗体,输出结果为D。
A.150B.20-1C.10TrueD.10False
(22)有如下程序:
PrivateSubForm_Click()
DimiAsInteger,sumAsInteger
sum=0
Fori=2To10
IfiMod2<>0AndiMod3=0Then
sum=sum+i
EndIf
Nexti
Printsum
EndSub
4
程序运行后,单击窗体,输出结果为
A
。
A.12
B.30
C.24
D.18
(23)在窗体上画一个名称为
Text1
的文本框和一个名称为
Command1
的命令按钮,然后编
写如下事件过程:
PrivateSubCommand1_Click()
Dimarray1(10,10)AsInteger
DimiAsInteger,jAsInteger
Fori=1To3
Forj=2To4
array1(i,j)=i+j
Nextj
Nexti
Text1.Text=array1(2,3)+array1(3,4)
EndSub
程序运行后,单击命令按钮,在文本框中显示的值是
A
。
A.12
B.13
C.14
D.15
(24)在窗体上画一个命令按钮,其名称为
Command1,然后编写如下事件过程:
PrivateSubCommand1_Click()
Dima1(4,4),a2(4,4)
Fori=1To4
Forj=1To4
a1(i,j)=i+j
a2(i,j)=a1(i,j)+i+j
Nextj
Nexti
Printa1(3,3);a2(3,3)
EndSub
程序运行后,单击命令按钮,在窗体上输出的是
D
。
A.6
6
B.10
5
C.7
21
D.6
12
(25)有如下程序:
OptionBase1
PrivateSubForm_Click()
Dimarr,Sum
Sum=0
arr=Array(1,3,5,7,9,11,13,15,17,19)
Fori=1To10
Ifarr(i)/3=arr(i)\3Then
Sum=Sum+arr(i)
EndIf
Nexti
PrintSum
EndSub
程序运行后,单击窗体,输出结果为C。
A.25B.26C.27D.28
(26)在窗体上画一个命令按钮,然后编写如下事件过程:
PrivateSubCommand1_Click()
Dima(5)AsString
Fori=1To5
a(i)=Chr(Asc("A")+(i-1))
Nexti
ForEachbIna
Printb;
Next
EndSub
程序运行后,单击命令按钮,输出结果是A。
A.ABCDEB.12345C.abcdeD.出错信息
(27)以下关于函数过程的叙述中,正确的是D。
A.如果不指明函数过程参数的类型,则该参数没有数据类型
B.函数过程的返回值可以有多个
C.当数组作为函数过程的参数时,既能以传值方式传递,也能以引用方式传递D.函数过程形参的类型与函数返回值的类型没有关系
(28)函数过程F1的功能是:
如果参数b为奇数,则返回值为1,否则返回值为0。
以下
能正确实现上述功能的代码是B。
A.FunctionF1(bAsInteger)
IfbMod2=0Then
Return0
Else
Return1
EndIf
EndFunction
B.FunctionF1(bAsInteger)
IfbMod2=0Then
F1=0
Else
F1=1
EndIf
EndFunction
C.FunctionF1(bAsInteger)
IfbMod2=0Then
F1=1
Else
F1=0
6
EndIf
EndFunction
D.FunctionF1(bAsInteger)
IfbMod2<>0Then
Return0
Else
Return1
EndIf
EndFunction
(29)以下关于
KeyPress事件过程中参数
KeyAscii
的叙述中正确的是
A
。
A.KeyAsciiC.KeyAscii
参数是所按键的参数可以省略
ASCII
码
B.KeyAsciiD.KeyAscii
参数的数据类型为字符串参数是所按键上标注的字符
(30)设窗体上有一个名为Text1的文本框,并编写如下程序:
PrivateSubForm_Load()
Show
Text1.Text=""
Text1.SetFocus
EndSub
PrivateSubForm_MouseUp(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)
Print"程序设计"
EndSub
PrivateSubText1_KeyDown(KeyCodeAsInteger,ShiftAsInteger)
Print"VisualBasic";
EndSub
程序运行后,如果在文本框中输入字母“a”,然后单击窗体,则在窗体上显示的内容是
C。
A.VisualBasicB.程序设计C.VisualBasic程序设计D.a程序设计
(31)假定有下表所列的菜单结构:
━━━━━━━━━━━━━━━━━━━━
名称层次
────────────────────
appear1(主菜单)
bigicon2(子菜单)
smallicon2(子菜单)
━━━━━━━━━━━━━━━━━━━━
要求程序运行后,如果单击菜单项“大图标”,则在该菜单项前添加一个“√”。
以下正确的
事件过程是C。
A.PrivateSubbigicon_Click()
bigicon.Checked=False
EndSub
B.PrivateSubbigicon_Click()
Me.appear.bigicon.Checked=True
EndSub
C.PrivateSubbigicon_Click()
bigicon.Checked=True
EndSub
D.PrivateSubbigicon_Click()
appear.bigicon.Checked=True
EndSub
(32)假定通用对话框的名称为CommonDialog1,命令按钮的名称为Command1,则单击
命令按钮后,能使打开的对话框的标题为“NewTitle”的事件过程是C。
A.PrivateSubCommand1_Click()
CommonDialog1.DialogTitle="NewTitle"
CommonDialog1.ShowPrinter
EndSub
B.PrivateSubCommand1_Click()
CommonDialog1.DialogTitle="NewTitle"
CommonDialog1.ShowFont
EndSub
C.PrivateSubCommand1_Click()
CommonDialog1.DialogTitle="NewTitle"
CommonDialog1.ShowOpen
EndSub
D.PrivateSubCommand1_Click()
CommonDialog1.DialogTitle="NewTitle"
CommonDialog1.ShowColor
EndSub
(33)如果一个工程含有多个窗体及标准模块,则以下叙述中错误的是D。
A.任何时刻最多只有一个窗体是活动窗体
B.不能把标准模块设置为启动模块
C.用Hide方法只是隐藏一个窗体,不能从内存中清除该窗体
D.如果工程中含有SubMain过程,则程序一定首先执行该过程
(34)假定在工程文件中有一个标准模块,其中定义了如下记录类型
TypeBooks
NameAsString*10
TelNumAsString*20
EndType
要求当执行事件过程Command1_Click时,在顺序文件Person.txt中写入一条记录。
下列能
够完成该操作的事件过程是A。
A.PrivateSubCommand1_Click()
DimBAsBooks
Open"c:
\Person.txt"ForOutputAs#1
8
B.Name=InputBox("输入姓名")
B.TelNum=InputBox("输入电话号码")
Write#1,B.Name,B.TelNum
Close#1
EndSub
B.PrivateSubCommand1_Click()
DimBAsBooks
Open"c:
\Person.txt"ForInputAs#1
B.Name=InputBox("输入姓名")
B.TelNum=InputBox("输入电话号码")
Print#1,B.Name,B.TelNum
Close#1
EndSub
C.PrivateSubCommand1_Click()
DimBAsBooks
Open"c:
\Person.txt"ForOutputAs#1
Name=InputBox("输入姓名")
TelNum=InputBox("输入电话号码")
Write#1,B
Close#1
EndSub
D.PrivateSubCommand1_Click()
DimBAsBook
Open"c:
\Person.txt"ForInputAs#1
Name=InputBox("输入姓名")
TelNum=InputBox("输入电话号码")
Print#1,B.Name,B.TelNum
Close#1
EndSub
(35)目录列表框的Path属性的作用是B。
A.显示当前驱动器或指定驱动器上的某目录下的文件名
B.显示当前驱动器或指定驱动器上的目录结构
C.显示根目录下的文件名
D.显示指定路径下的文件
2分,共30分)
请将每空的正确答案写在答题卡【1】~【15】序号的横线上,答在试卷上不得分。
(1)数据管理技术发展过程经过人工管理、文件系统和数据库系统三个阶段,其中数据独
立性最高的阶段是【1】。
(2)算法复杂度主要包括时间复杂度和【2】复杂度。
(3)在进行模块测试时,要为每个被测试的模块另外设计两类模块:
驱动模块和承接模块
(桩模块)。
其中【3】的作用是将测试数据传送给被测试的模块,并显示被测试模块所产生的结果。
(4)一棵二叉树第六层(根结点为第一层)的结点数最多为【4】个。
(5)数据结构分为逻辑结构和存储结构,循环队列属于【5】结构。
(6)设有以下函数过程:
Functionfun(mAsInteger)AsInteger
DimkAsInteger,sumAsInteger
sum=0
Fork=mTo1Step-2
sum=sum+k
Nextk
fun=sum
EndFunction
若在程序中用语句s=fun(10)调用此函数,则s的值为【6】。
(7)在窗体上画一个命令按钮和一个文本框,然后编写命令按钮的Click事件过程。
程序
运行后,在文本框中输入一串英文字母(不区分大小写),单击命令按钮,程序可找出未在
文本框中输入的其他所有英文字母,并以大写方式降序显示到Text1中。
例如,若在Text1
中输入的是abDfdb,则单击Command1按钮后Text1中显示的字符串是
ZYXWVUTSRQPONMLKJIHGEC。
请填空。
PrivateSubCommand1_Click()
DimstrAsString,sAsString,cAsString
str=UCase(Text1)
s=""
c="Z"
Whilec>="A"
IfInStr(str,c)=0Then
s=【7】
EndIf
c=Chr$(Asc(c)【8】)
Wend
Ifs<>""Then
Text1=s
EndIf
EndSub
(8)在n个运动员中选出任意r个人参加比赛,有很多种不同的选法,选法的个数可以用
公式计算。
下图窗体中3个文本框的名称依次是Text1、Text2、Text3。
程
10
序运行时在T