vb历年真题经典版.docx
《vb历年真题经典版.docx》由会员分享,可在线阅读,更多相关《vb历年真题经典版.docx(140页珍藏版)》请在冰豆网上搜索。
vb历年真题经典版
2005年4月
一、选择题(每小题2分,共70分)
下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。
请将正确选项填涂在答题卡相应位置上,答在试卷上不得分。
(1)数据的存储结构是指
A)存储在外存中的数据B)数据所占的存储空间量
C)数据在计算机中的顺序存储方式D)数据的逻辑结构在计算机中的表示
(2)下列关于栈的描述中错误的是
A)栈是先进后出的线性表
B)栈只能顺序存储
C)栈具有记忆作用
D)对栈的插入与删除操作中,不需要改变栈底指针
(3)对于长度位n的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是
A)冒泡排序为n/2B)冒泡排序为n
C)快速排序为nD)快速排序为n(n-1)/2
(4)对长度为n的线性表进行顺序查找,在最坏情况下所需要的比较次数为
A)log2nB)n/2C)nD)n+1
(5)下列对于线性链表的描述中正确的是
A)存储空间不一定是连续,且各元素的存储顺序是任意的
B)存储空间不一定是连续,且前件元素一定存储在后件元素的前面
C)存储空间必须连续,且前件元素一定存储在后件元素的前面
D)存储空间必须连续,且各元素的存储顺序是任意的
(6)下列对于软件测试的描述中正确的是
A)软件测试的目的是证明程序是否正确
B)软件测试的目的是使程序运行结果正确
C)软件测试的目的是尽可能多地发现程序中的错误
D)软件测试的目的是使程序符合结构化原则
(7)为了使模块尽可能独立,要求
A)模块的内聚程度要尽量高,且各模块间的耦合程度要尽量强
B)模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱
C)模块的内聚程度要尽量低,且各模块间的耦合程度要尽量弱
D)模块的内聚程度要尽量低,且各模块间的耦合程度要尽量强
(8)下列描述中正确的是
A)程序就是软件
B)软件开发不受计算机系统的限制
C)软件既是逻辑实体,又是物理实体
D)软件是程序、数据与相关文档的集合
(9)数据独立性是数据库技术的重要特点之一。
所谓数据独立性是指
A)数据与程序独立存放
B)不同的数据被存放在不同的文件中
C)不同的数据只能被对应的应用程序所使用
D)以上三种说法都不对
(10)用树形结构表示实体之间联系的模型是
A)关系模型B)网状模型C)层次模型D)以上三个都是
(11)在窗体(名称为Form1)上画一个名称为Text1的文本框和一个名称为Command1的命令按钮,然后编写一个事件过程。
程序运行后,如果在文本框中输入一个字符,则把命令按钮的标题设置为“计算机等级考试”。
以下能实现上述操作的事件过程是
A)PrivateSubText1_Change()
Command1.Caption="计算机等级考试"
EndSub
B)PrivateSubCommand1_Click()
Caption="计算机等级考试"
EndSub
C)PrivateSubForm1_Click()
Text1.Text="计算机等级考试"
EndSub
D)PrivateSubCommand1_Click()
Text1.Text="计算机等级考试"
EndSub
(12)设a=5,b=4,c=3,d=2,下列表达式的值是
3>2*bOra=cAndb<>cOrc>d
A)1B)TrueC)FasleD)2
(13)设a="MicrosoftVisualBasic",则以下变量b的值为"VisualBasic"的语句是
A)b=Left(a,10)B)b=Mid(a,10)
C)b=Right(a,10)D)b=Mid(a,11,10)
(14)假定有如下的窗体事件代码:
PrivateSubForm_Click()
a$="MicrosoftVisualBasic"
b$=Right(a$,5)
c$=Mid(a$,1,9)
MsgBoxa$,34,b$,c$,5
EndSub
程序运行后,单击窗体,则在弹出的信息框的标题栏中显示的信息是
A)MicrosoftVisualB)Microsoft
C)BasicD)5
(15)设a="a",b="b",c="c",d="d",执行语句x=IIF((aD),"A","B")后,x的值为
A)"a"B)"b"C)"B"D)"A"
(16)为了使命令按钮(名称为Command1)右移200,应使用的语句是
A)Comand1.Move-200
B)Comand1.Move200
C)Command1.Left=Command1.Left+200
D)Command1.Left=Command1.Left-200
(17)在窗体上画一个文本框,然后编写如下事件过程:
PrivateSubForm_Click()
x=InputBox(“请输入一个整数”)
Printx+Text1.text
EndSub
程序运行时,在文本框输入456,然后单击窗体,在输入对话框中输入123,单击“确定”按钮后,在窗体上显示的内容为
A)123B)456C)579D)123456
(18)在窗体上画一个文本框和一个计时器控件,名称分别为Text1和Timer1,在属性窗口中把计时器的Interval属性设置为1000,Enabled属性设置为False。
程序运行后,如果单击命令按钮,则每隔一秒钟在文本框中显示一次当前的时间。
以下是实现上述操作的程序:
PrivateSubCommand1_Click()
Timer1.
EndSub
PrivateSubTimer1_Timer()
Text1.Text=Time
EndSub
在处应填入的内容是
A)Enabled=TrueB)Enabled=False
C)Visible=TrueD)Visible=False
(19)假定在图片框Picture1中装入一个图形,为了清除该图形(不删除图片框),应该用的正确方法是
A)选择图片框,然后按Del键
B)执行语句Picture1.Picture=LoadPicture(“”)
C)执行语句Picture1.Picture=””
D)选择图片框,在属性窗口中选择Picture属性条,然后按回车键。
(20)在窗体上画一个名称为List1的列表框,一个名称为Label1的标签,列表框中显示若干个项目。
当单击列表框中的某个项目时,在标签中显示被选中项目的名称。
下列能正确实现上述操作的程序是
A)PrivateSubList1_Click()
Label1.Caption=List1.ListIndex
EndSub
B)PrivateSubList1_Click()
Label1.Name=List1.ListIndex
EndSub
C)PrivateSubList1_Click()
Label1.Name=List1.Text
EndSub
D)PrivateSubList1_Click()
Label1.Caption=List1.Text
EndSub
(21)在窗体上画一个命令按钮,其名称为Command1,然后编写如下事件过程:
PrivateSubCommand1_Click()
DimiAsInteger,xAsInteger
Fori=1To6
Ifi=1Thenx=i
Ifi<=4Then
x=x+1
Else
x=x+2
EndIf
Nexti
Printx
EndSub
程序运行后,单击命令按钮,其输出结果为
A)9B)6C)12D)15
(22)在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:
PrivateSubCommand1_Click()
c=”ABCD”
Forn=1To4
Print
Next
EndSub
程序运行吼,单击命令按钮,要求在窗体上显示如下内容:
D
CD
BCD
ABCD
则在处应填入的内容为
A)Left(c,n)B)Right(c,n)C)Mid(c,n,1)D)Mid(c,n,n)
(23)执行以下程序段
DimxAsInteger,iAsInteger
x=0
Fori=20To1Step-2
x=x+i\5
Nexti
后,x的值为
A)16B)17C)18D)19
(24)在VisualBisic工程块中,可以作为“启动对象”的程序是
A)任何窗体或标准模块B)任何窗体或过程
C)SubMain过程或其他任何模块D)SubMain过程或任何窗体
(25)假设建立了一个名为Command1的命令按钮数组,则以下说法中错误的是
A)数组中每个命令按钮的名称(Name属性)均为Command1
B)数组中每个命令按钮的标题(Caption属性)都一样
C)数组中所有命令按钮可以使用同一个事件过程
D)用名称Command1(下标)可以访问数组中的每个命令按钮
(26)把窗体的KeyPreview属性设置为True,然后编写如下事件过程
PrivateSubForm_KeyPress(KeyAsciiAsInteger)
DimchAsString
Ch=Chr(KeyAscii)
KeyAscii=Asc(UCase(ch))
PrintChr(KeyAscii+2)
EndSub
程序运行后,按键盘上的“A”键,则在窗体上显示的内容是
A)AB)BC)CD)D
(27)在窗体上画一个命令按钮和一个文本框,名称分别为Command1和Text1,然后编写如下程序:
PrivateSubCommand1_Click()
a=InputBox(“请输入日期(1~31)”)
t=”旅游景点:
”_
&IIf(a>0Anda<=10,”长城”,““)_
&IIf(a>10Anda<=20,”故宫”,““)_
&IIf(a>20Anda<=31,”颐和园”,““)
Text1.Text=t
EndSub
程序运行后,如果从键盘上输入16,则在文本框中显示的内容是
A)旅游景点:
长城故宫B)旅游景点:
长城颐和园
C)旅游景点:
颐和园D)旅游景点:
故宫
(28)在窗体上画一个名称为Label1的标签,然后编写如下事件过程:
PrivateSubForm_Click()
Dimarr(10,10)AsInteger
DimiAsInteger,jAsInteger
Fori=2To4
Forj=2To4
arr(i,j)=i*j
Nextj
Nexti
Label1.Caption=Str(arr(2,2)+arr(3,3))
EndSub
程序运行后,单击窗体,在标签中显示的内容是
A)12B)13C)14D)15
(29)在窗体上画一个名称为Command1的命令按钮,然后编写如下通用过程和命令按钮
的事件过程:
PrivateFunctionfun(ByValmAsInteger)
IfmMod2=0Then
fun=2
Else
fun=1
EndIf
EndFunction
PrivateSubCommand1_Click()
DimiAsInteger,sAsInteger
s=0
Fori=1To5
s=s+fun(i)
Next
Prints
EndSub
程序运行后,单击命令按钮,在窗体上显示的是
A)6B)7C)8D)9
(30)阅读程序:
OptionBase1
Dimarr()AsInteger
PrivateSubForm_Click()
DimiAsInteger,jAsInteger
ReDimarr(3,2)
Fori=1To3
Forj=1To2
arr(i,j)=i*2+j
Nextj
Nexti
ReDimPreservearr(3,4)
Forj=3To4
arr(3,j)=j+9
Nextj
Printarr(3,2)+arr(3,4)
EndSub
程序运行后,单击窗体,输出结果为
A)21B)13C)8D)25
(31)在窗体上画一个名称为Command1的命令按钮,然后编写如下程序:
OptionBase1
PrivateSubCommand1_Click()
DimcAsInteger,dAsInteger
d=0
c=6
x=Array(2,4,6,8,10,12)
Fori=1To6
Ifx(i)>cThen
d=d+x(i)
c=x(i)
Else
d=d-c
EndIf
Nexti
Printd
EndSub
程序运行后,如果单击命令按钮,则在窗体上输出的内容诶
A)10B)16C)12D)20
(32)设有如下程序
PrivateSubCommand1_Click()
DimcAsInteger,dAsInteger
c=4
d=InputBox(“请输入一个整数”)
DoWhiled>0
Ifd>cThen
c=c+1
EndIf
d=InputBox(“请输入一个整数”)
loop
Printc+d
EndSub
程序运行后,单击命令按钮,如果在输入对话框中依次输入1、2、3、4、5、6、7、8、9、0,
则输出结果是
A)12B)11C)10D)9
(33)在窗体上画一个名称为Command1的命令按钮和一个名称为Text1的文本框,在文本框中输入以下字符串:
MicrosoftVisualBasicProgramming
然后编写如下事件过程:
PrivateSubCommand1_Click()
Open“d:
\temp\outf.txt”ForOutputAs#1
Fori=1ToLen(Text1.Text)
c=Mid(Text1.Text,i,1)
Ifc>=”A”Andc<=”Z”Then
Print#1,LCase(C)
EndIf
Nexti
Close
EndSub
程序运行后,单击命令按钮,文件outf.txt中的内容是
A)MVBPB)mvbpC)MD)m
Vv
Bb
Pp
(34)在窗体上画一个名称为Command1的命令按钮,然后编写如下程序:
DimSWAsBoolean
Functionfunc(XAsInteger)AsInteger
IfX<20Then
Y=X
Else
Y=20+X
EndIf
Func=Y
EndFunction
PrivateSubForm_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)
SW=False
EndSub
PrivateSubForm_MouseUp(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)
SW=True
EndSub
PrivateSubCommand1_Click()
DimintNumAsInteger
intNum=InputBox(“”)
IfSWThen
printfunc(intNum)
EndIf
EndSub
程序运行后,单击命令按钮,将显示一个输入对话框,如果在对话框中输入25,则程序的执行结果为
A)输出0B)输出25C)输出45D)无任何输出
(35)设有如下通用过程:
PrivateSubFun(a()AsInteger,xAsInteger)
Fori=1To5
x=x+a(i)
Next
EndSub
在窗体上画一个名称为Text1的文本框和一个名称为Command1的命令按钮,然后编写如下的事件过程:
PrivateSubCommand1_Click()
Dimarr(5)AsInteger,nAsInteger
Fori=1To5
arr(i)=i+i
Next
Funarr,n
Text1.Text=Str(n)
EndSub
程序运行后,单击命令按钮,则在文本框中显示的内容是
A)30B)25C)20D)15
二填空题(每空2分,共30分)
将每空的正确答案写在答题卡【1】~【15】序号的横线上,答在试卷上不得分。
(1)某二叉树中度为2的结点有18个,则该二叉树中有【1】个叶子结点。
(2)在面向对象方法中,类的实例称为【2】。
(3)诊断和改正程序中错误的工作通常称为【3】。
(4)在关系数据库中,把数据表示成二维表,每一个二维表称为【4】。
(5)问题处理方案的正确而完整的描述称为【5】。
(6)以下语句的输出结果是【6】。
PrintInt(12345.6789*100+0.5)/100
(7)在窗体上画一个文本框和一个图片框,然后编写如下两个事件过程:
PrivateSubForm_Click()
Text1.Text="VB程序设计"
EndSub
PrivateSubText1_Change()
Picture1.Print"VBProgramming"
EndSub
程序运行后,单击窗体,则在文本框中显示的内容是【7】,而在图片框中显示的内容是【8】。
(8)阅读下面程序:
PrivateSubForm_Click()
DimCheckAsBoolean,CounterAsInteger
Check=True
Counter=5
Do
DoWhileCounter<20
Counter=Counter+1
IfCounter=10Then
Check=False
ExitDo
EndIf
Loop
LoopUntilCheck=False
PrintCounter
EndSub
程序运行后,单击窗体,输出结果为【9】。
(9)设有如下程序:
PrivateSubForm_Click()
DimaAsInteger
n=8
s=0
Do
s=s+n
n=n-1
LoopWhilen>0
Prints
EndSub
以上程序的功能是【10】。
程序运行后,单击窗体,输出结果为【11】。
(10)设有如果程序:
OptionBase1
PrivateSubCommand1_Click(0
Dimarr1
DimMinAsInteger,IAsInteger
arr1=Array(12,435,76,-24,78,54,866,43)
Min=【12】
Fori=2To8
Ifarr1(i)Nexti
Print“最小值是:
”;Min
EndSub
以上程序的功能是:
用Array函数建立一个含有8个元素的数组,然后查找并输出该数组值各元素的最小值。
请填空。
(11)在名称为Form1的窗体上画一个文本框,其名称为Text1,在属性窗口值把该文本框的
MultiLine属性设置为True,然后编写如下的事件过程:
PrivateSubForm_Click()
Open"d:
\text\smtext1.txt"ForInputAs#1
DoWhileNot【14】
LineInput#1,aspect$
Whole$=whole$+aspect$+Chr$(13)+Chr$(10)
Loop
Text1.Text=whole$
Close#1
Open"d:
\text\smtext2.txt"ForOutputAs#1
Print#1,【15】
Close#1
EndSub
上述程序的功能是,把磁盘文件sntext1.txt的内容读到内存并在文本框中显示出来,然后把该文本框中的内容存入磁盘文件smtext2.txt.请填空。
2005年9月
一、选择题(每小题2分,共70分)
下列各题A)、B)、C)、D)四个选项中,只有一个选项正确的,请将正确选项填涂在答题卡相应位置上,答在试卷上不得分。
(1)下列叙述中正确的是
A)程序设计就是编制程序B)程序的测试必须由程序员自己去完成
C)程序经调试改错后还应进行再测试D)程序经调试改错后不必进行再测试
(2)下列数据结构中,能用二分法进行查找的是
A)顺序存储的有序线性表B)线性链表
C)二叉链表D)有序线性链表
(3)下列关于栈的描述正确的是
A)在栈中只能插入元素而不能删除元素
B)在栈中只能删除元素而不能插入元素
C)栈是特殊的线性表,只能在一端插入或删除元素
D)栈是特殊的线性表,只能在一端插入元素,而在另一端删除元素
(4)下列叙述中正确的是
A)一个逻辑数据结构只能有一种存储结构
B)数据的逻辑结构属于线性结构,存储结构属于非线性结构
C)一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率
D)一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率
(5)下列描述中正确的是
A)软件工程只是解决软件项目的管理问题
B)软件工程主要解决软件产品的生产率问题
C)软件工程的主要思想是强调在软件开发过程中需要应用工程化原则
D)软件工程只是解决软件开发中的技术问题
(6)在软件设计中,不属于过程设计工具的是
A)PDL(过程设计语言)B)PAD图
C)N-S图D)DFD图
(7)下列叙述中正确的是
A)软件交付使用后还需要进行维护
B)软件一旦交付使用就不需要再进行维护
C)软件交付使用后其生命周期就结束
D)软件维