A)TrueB)1
C)-1D)0
(17)以下可以作为VisualBasic变量名的是。
A)A#AB)counstA
C)3AD)?
AA
(18)设x=4,y=6,则以下不能在窗体上显示出“A=10”的语句是。
A)PrintA=x+yB)Print"A=";x+y
C)Print "A="+Str(x+y) D)Print"A="&x+y
(19)假定有如下的命令按钮(名称为Command1)事件过程:
PrivateSubCommand1_Click()
x=InputBox("输入:
","输入整数")
MsgBox"输入的数据是:
”,,”输入数据:
"+x
EndSub
程序运行后,单击命令按钮,如果从键盘上输入整数10,则以下叙述中错误的是。
A)x的值是数值10
B)输入对话框的标题是“输入整数”
C)信息框的标题是“输入数据:
10”
D)信息框中显示的是“输入的数据是:
”
(20)在窗体上画1个命令按钮(名称为Command1)和1个文本框(名称为Text1),然
后编写如下事件过程:
PrivateSubCommand1_Click()
x=Val(Text1.Text)
SelectCasex
Case1,3
y=x*x
CaseIs>=10,Is<=-10
y=x
Case-10To10
y=-x
EndSelect
EndSub
程序运行后,在文本框中输入3,然后单击命令按钮,则以下叙述中正确的是。
A)执行y=x*xB)执行y=-x
C)先执行y=x*x,再执行y=-xD)程序出错
(21)设有命令按钮Command1的单击事件过程,代码如下:
PrivateSubCommand1_Click()
Dima(30)AsInteger
Fori=1To30
a(i)=Int(Rnd*100)
Next
ForEacharrItemIna
IfarrItemMod7=0ThenPrintarrItem;
IfarrItem>90ThenExitFor
Next
EndSub
对于该事件过程,以下叙述中错误的是。
A)a数组中的数据是30个100以内的整数
B)语句ForEacharrItemIna有语法错误
C)IfarrItemMod7=0……语句的功能是输出数组中能够被7整除的数
D)IfarrItem>90……语句的作用是当数组元素的值大于90时退出For循环
2006年4月笔试试卷第3页(共12页)2006年4月笔试试卷第4页(共12页)(22)设有命令按钮Command1的单击事件过程,代码如下:
PrivateSubCommand1_Click()
Dima(3,3)AsInteger
Fori=1To3
Forj=1To3
a(i,j)=i*j+i
Nextj
Nexti
Sum=0
Fori=1To3
Sum=Sum+a(i,4-i)
Nexti
PrintSum
EndSub
运行程序,单击命令按钮,输出结果是。
A)20B)7
C)16D)17
(23)在窗体上画1个名称为Command1的命令按钮,然后编写如下事件过程:
PrivateSubCommand1_Click()
a=0
Fori=1To2
Forj=1To4
IfjMod2<>0Then
a=a-1
EndIf
a=a+1
Nextj
Nexti
Printa
EndSub
程序运行后,单击命令按钮,输出结果是。
A)0B)2
C)3D)4
(24)窗体上有名称分别为Text1、Text2的2个文本框,有一个由3个单选按钮构成的控件数组Option1,如图1所示。
程序运行后,如果单击某个单选按钮,则执行Text1中的数值与该单选按钮所对应的运算(乘以1、10或100),并将结果显示在Text2中,如图2所示。
为了实现上述功能,在程序中的问号(?
)处应填入的内容是。
图1图2 PrivateSubOption1_Click(IndexAsInteger)
IfText1.Text<>""Then
SelectCase ?
Case0
Text2.Text=Val(Text1.Text)
Case1
Text2.Text=Val(Text1.Text)*10
Case2
Text2.Text=Val(Text1.Text)*100
EndSelect
EndIf
EndSub
A)IndexB)Option1.Index
C)Option1(Index) D)Option1(Index).value
(25)在窗体上画1个命令按钮,其名称为Command1,然后编写如下程序:
PrivateSubCommand1_Click()
Dima(10)AsInteger
DimxAsInteger
Fori=1To10
a(i)=8+i
Next
x=2
Printa(f(x)+x)
EndSub
Functionf(xAsInteger)
x=x+3
f=x
EndFunction
程序运行后,单击命令按钮,输出结果为。
A)12B)15
C)17D)18
2006年4月笔试试卷第5页(共12页)2006年4月笔试试卷第6页(共12页)(26)以下关于过程的叙述中,错误的是。
A)事件过程是由某个事件触发而执行的过程
B)函数过程的返回值可以有多个
C)可以在事件过程中调用通用过程
D)不能在事件过程中定义函数过程
(27)在窗体上画3个标签、3个文本框(名称分别为Text1、Text2和Text3)和1个命令按钮(名称为Command1),外观如图所示。
编写如下程序:
PrivateSubForm_Load()
Text1.Text=""
Text2.Text=""
Text3.Text=""
EndSub
PrivateSubCommand1_Click()
x=Val(Text1.Text)
y=Val(Text2.Text)
Text3.Text=f(x,y)
EndSub
Functionf(ByValxAsInteger,ByValyAsInteger)
DoWhiley<>0
tmp=xMody
x=y
y=tmp
Loop
f=x
EndFunction
运行程序,在Text1文本框中输入36,在Text2文本框中输入24,然后单击命令按钮,则在Text3文本框中显示的内容是。
A)4B)6
C)8D)12
(28)窗体上有名称分别为Text1、Text2的2个文本框,要求文本框Text1中输入的数据小于500,文本框Text2中输入的数据小于1000,否则重新输入。
为了实现上述功能,在以下程序中问号(?
)处应填入的内容是。
PrivateSubText1_LostFocus()
CallCheckInput(Text1,500)
EndSub
PrivateSubText2_LostFocus()
CallCheckInput(Text2,1000)
EndSub
SubCheckInput(tAs?
,xAsInteger)
IfVal(t.Text)>xThen
MsgBox"请重新输入!
"
EndIf
EndSub
A)TextB)SelText
C)ControlD)Form
(29)在窗体上画1个文本框,其名称为Text1,然后编写如下过程:
PrivateSubText1_KeyDown(KeyCodeAsInteger,ShiftAsInteger)
PrintChr(KeyCode)
EndSub
PrivateSubText1_KeyUp(KeyCodeAsInteger,ShiftAsInteger)
PrintChr(KeyCode+2)
EndSub
程序运行后,把焦点移到文本框中,此时如果敲击“A”键,则输出结果为。
A)A
AB)A
BC)A
CD)A
D
(30)为了使列表框中的项目呈多列显示,需要设置的属性为。
A)ColumnsB)Style
C)ListD)MultiSelect
(31)在窗体上画1个命令按钮,名称为Command1,然后编写如下程序:
DimFlagAsBoolean
PrivateSubCommand1_Click()
DimintNumAsInteger
intNum=InputBox("请输入:
")
IfFlagThen
Printf(intNum)
EndIf
EndSub
Functionf(XAsInteger)AsInteger
IfX<10Then
Y=X
Else
Y=X+10
EndIf
f=Y
EndFunction
PrivateSubForm_MouseUp(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)
Flag=True
EndSub
运行程序,首先单击窗体,然后单击命令按钮,在输入对话框中输入5,则程序的输出结果为。
A)0B)5
C)15D)无任何输出
(32)在菜单编辑器中建立1个名称为Menu0的菜单项,将其“可见”属性设置为False,并建立其若干子菜单,然后编写如下过程:
PrivateSubForm_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)
IfButton=1Then
PopupMenuMenu0
EndIf
EndSub
则以下叙述中错误的是。
A)该过程的作用是弹出一个菜单
B)单击鼠标右键时弹出菜单
C)Menu0是在菜单编辑器中定义的弹出菜单的名称
D)参数X、Y指明鼠标当前位置的坐标
(33)窗体上有1个名称为CD1的通用对话框,1个名称为Command1的命令按钮。
命令按钮的单击事件过程如下:
PrivateSubCommand1_Click()
CD1.FileName=""
CD1.Filter="AllFiles|*.*|(*.DoC)|*.Doc|(*.Txt)|*.txt"
CD1.FilterIndex=2
CD1.Action=1
EndSub
关于以上代码,错误的叙述是。
A)执行以上事件过程,通用对话框被设置为“打开”文件对话框
B)通用对话框的初始路径为当前路径
C)通用对话框的默认文件类型为*.Txt
D)以上代码不对文件执行读写操作
(34)以下叙述中错误的是。
A)用Shell函数可以执行扩展名为.exe的应用程序
B)若用Static定义通用过程,则该过程中的局部变量都被默认为Static类型
C)Static类型的变量可以在标准模块的声明部分定义
D)全局变量必须在标准模块中用Public或Global声明
(35)以下关于文件的叙述中,错误的是。
A)使用Append方式打开文件时,文件指针被定位于文件尾
B)当以输入方式(Input)打开文件时,如果文件不存在,则建立一个新文件
C)顺序文件各记录的长度可以不同
D)随机文件打开后,既可以进行读操作,也可以进行写操作
二、填空题(每空2分,共30分)
请将每空的正确答案写在答题卡【1】~【15】序号的横线上,答在试卷上不得分。
(1)对长度为10的线性表进行冒泡排序,最坏情况下需要比较的次数为【1】。
(2)在面向对象方法中,【2】描述的是具有相似属性与操作的一组对象。
(3)在关系模型中,把数据看成是二维表,每一个二维表称为一个【3】。
(4)程序测试分为静态分析和动态测试。
其中【4】是指不执行程序,而只是对程序文本进行检查,通过阅读和讨论,分析和发现程序中的错误。
(5)数据独立性分为逻辑独立性与物理独立性。
当数据的存储结构改变时,其逻辑结构可以不变,因此,基于逻辑结构的应用程序不必修改,称为【5】。
(6)下列语句的输出结果是【6】。
PrintFormat(Int(12345.6789*100+0.5)/100,"0000,0.00")
(7)在窗体上画1个命令按钮,其名称为Command1,然后编写如下事件过程:
PrivateSubCommand1_Click()
Dimarr(1To100)AsInteger
Fori=1To100
arr(i)=Int(Rnd*1000)
Nexti
Max=arr
(1)
Min=arr
(1)
Fori=1To100
If【7】Then
Max=arr(i)
EndIf
If【8】Then
Min=arr(i)
EndIf
Nexti
Print"Max=";Max,"Min=";Min
EndSub
程序运行后,单击命令按钮,将产生100个1000以内的随机整数,放入数组arr中,然后查找并输出这100个数中的最大值Max和最小值Min,请填空。
2006年4月笔试试卷第9页(共12页)2006年4月笔试试卷第10页(共12页)(8)在窗体上画1个名称为Command1的命令按钮和2个名称分别为Text1、Text2的文本框,如图所示,然后编写如下程序:
FunctionFun(xAsInteger,ByValyAsInteger)AsInteger
x=x+y
Ifx<0Then
Fun=x
Else
Fun=y
EndIf
EndFunction
PrivateSubCommand1_Click()
DimaAsInteger,bAsInteger
a=-10:
b=5
Text1.Text=Fun(a,b)
Text2.Text=Fun(a,b)
EndSub
程序运行后,单击命令按钮,Text1和Text2文本框显示的内容分别是【9】和【10】。
(9)在窗体上画1个命令按钮和1个文本框,其名称分别为Command1和Text1,然后编
写如下代码:
DimSaveAllAsString
PrivateSubCommand1_Click()
Text1.Text=Left(UCase(SaveAll),4)
EndSub
PrivateSubText1_KeyPress(KeyAsciiAsInteger)
SaveAll=SaveAll+Chr(KeyAscii)
EndSub
程序运行后,在文本框中输入abcdefg,单击命令按钮,则文本框中显示的内容是【11】。
2006年4月笔试试卷第11页(共12页)2006年4月笔试试卷第12页(共12页)(10)在窗体上画1个命令按钮和1个通用对话框,其名称分别为Command1和CommonDialog1,然后编写如下事件过程:
PrivateSubCommand1_Click()
CommonDialog1.【12】="打开文件"
CommonDialog1.Filter="AllFiles(*.*)|*.*"
CommonDialog1.InitDir="C:
\"
CommonDialog1.ShowOpen
EndSub
该程序的功能是,程序运行后,单击命令按钮,将显示“打开”文件对话框,其标题是“打开文件”,在“文件类型”栏内显示“AIlFiles(*.*)”,并显示C盘根目录下
的所有文件,请填空。
(11)在窗体上画1个文本框,名称为Text1,然后编写如下程序:
PrivateSubForm_Load()
Open"d:
\temp\dat.txt"ForOutputAs#1
Text1.Text=""
EndSub
PrivateSubText1_KeyPress(KeyAsciiAsInteger)
lf【13】=13Then
IfUCase(Text1.Text)=【14】Then
Close1
End
Else
Write#1,【15】
Text1.Text=""
EndIf
EndIf
EndSub
以上程序的功能是,在D盘temp目录下建立1个名为dat.txt的文件,在文本框中输入字符,每次按回车键(回车符的ASCII
2006年4月二级VB参考答案
一、选择题
(1)【答案】D)
(2)【答案】A)
(3)【答案】D)
(4)【答案】B)
(5)【答案】A)
(6)【答案】D)
(7)【答案】C)
(8)【答案】D)
(9)【答案】A)
(10)【答案】C)
(11)【答案】D)
(12)【答案】C)
(13)【答案】B)
(14)【答案】A)
(15)【答案】B)
(16)【答案】D)
(17)【答案】B)
(18)【答案】A)
(19)【答案】A)
(20)【答案】A)
(21)【答案】B)
(22)【答案】C)
(23)【答案】D)
(24)【答案】A)
(25)【答案】D)
(26)【答案】B)
(27)【答案】D)
(28)【答案】C)
(29)【答案】C)
(30)【答案】A)
(31)【答案】B)
(32)【答案】B)
(33)【答案】C)
(34)【答案】C)
(35)【答案】