2006蒙嘉慧微博年孙悦车震门事件4月全国计算机等级考试二级VB程序设计试题及答案
一、选择题(每小题2分,共70分)
下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。请将正确选项填涂在答题卡相应位置上,答在试卷上不得分。
(1)下列选项中不属于结构化程序设计方法的是。
A) 自顶向下B) 逐步求精
C) 模块化D) 可复用
(2)两个或两个以上模块之间关联的紧密程度称为。
A) 耦合度B) 内聚度
C) 复杂度 D) 数据传输特性
(3)下列叙述中正确的是。
A) 软件测试应该由程序开发者来完成
B) 程序经调试后一般不需要再测试
C) 软件维护只包括对程序代码的维护
D) 以上三种说法都不对
一、选择题(每小题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)对如下二叉树
ABDECF
进行后序遍历的结果为。
A) ABCDEFB) DBEAFC
C) ABDECFD) DEBFCA
(7)在深度为7的满二叉树中,叶子结点的个数为。
A) 32B) 31C) 64 D) 63
A) 队列B) 栈
C) 双向链表D) 二叉树
(5)下列叙述中正确的是。
A) 线性链表是线性表的链式存储结构
B) 栈与队列是非线性结构
C) 双向链表是非线性结构
D) 只有根结点的二叉树是线性结构
(6)对如下二叉树
ABDECF
进行后序遍历的结果为。
A) ABCDEFB) DBEAFC
C) ABDECFD) DEBFCA
(7)在深度为7的满二叉树中,叶子结点的个数为。
A) 32B) 31C) 64 D) 63
(8)“商品”与“顾客”两个实体集之间的联系一般是。
A) 一对一B) 一对多
C) 多对一D) 多对多
(9)在E-R图中,用来表示实体的图形是。
A) 矩形B) 椭圆形
C) 菱形D) 三角形
(10)数据库DB、数据库系统再见 张震岳DBS、数据库管理系统DBMS之间的关系是。
A) DB包含DBS和DBMSB) DBMS包含DB和DBS
C) DBS包含DB和DBMS D) 没有任何关系
A) 一对一B) 一对多
C) 多对一D) 多对多
(9)在E-R图中,用来表示实体的图形是。
A) 矩形B) 椭圆形
C) 菱形D) 三角形
(10)数据库DB、数据库系统再见 张震岳DBS、数据库管理系统DBMS之间的关系是。
A) DB包含DBS和DBMSB) DBMS包含DB和DBS
C) DBS包含DB和DBMS D) 没有任何关系
11)以下关于Visual Basic特点的叙述中,错误的是。
A) Visual Basic是采用事件驱动编程机制的语言
B) Visual Basic程序既可以编译运行,也可以解释运行
C) 构成Visual Basic程序的多个过程没有固定的执行顺序
D) Visual Basic程序不是结构化程序,不具备结构化程序的三种基本结构
(12)以下叙述中,错误的是。
A) Visual Basic是采用事件驱动编程机制的语言
B) Visual Basic程序既可以编译运行,也可以解释运行
C) 构成Visual Basic程序的多个过程没有固定的执行顺序
D) Visual Basic程序不是结构化程序,不具备结构化程序的三种基本结构
(12)以下叙述中,错误的是。
A) 一个Visual Basic应用程序可以含有多个标准模块文件
B) 一个Visual Basic工程可以含有多个窗体文件
C) 标准模块文件可以属于某个指定的窗体文件
D) 标准模块文件的扩展名是.bas
(13)以下叙述中,错误的是。
A) 在Visual Basic中,对象所能响应的事件是由系统定义的
B) 对象的任何属性既可以通过属性窗口设定,也可以通过程序语句设定
C) Visual Basic中允许不同对象使用相同名称的方法
D) Visual Basic中的对象具有自己的属性和方法
(14)设有如下语句:
Dim a,b As Integer
c=“VisualBasic”
d=#7/20/2005#
以下关于这段代码的叙述中,错误的是。
A) a被定义为Integer类型变量
B) 一个Visual Basic工程可以含有多个窗体文件
C) 标准模块文件可以属于某个指定的窗体文件
D) 标准模块文件的扩展名是.bas
(13)以下叙述中,错误的是。
A) 在Visual Basic中,对象所能响应的事件是由系统定义的
B) 对象的任何属性既可以通过属性窗口设定,也可以通过程序语句设定
C) Visual Basic中允许不同对象使用相同名称的方法
D) Visual Basic中的对象具有自己的属性和方法
(14)设有如下语句:
Dim a,b As Integer
c=“VisualBasic”
d=#7/20/2005#
以下关于这段代码的叙述中,错误的是。
A) a被定义为Integer类型变量
B) b被定义为Integer类型变量
C) c中的数据是字符串
D) d中的数据是日期类型
(15)以下能从字符串”VisualBasic”中直接取出子字符串”Basic”的函数是。
A) LeftB) Mid
C) String D) Instr
(16)设a=4,b=3,c=2,d=1,下列表达式的值是。
a>b+1 Or c<d And b Mod c
A) TrueB) 1
C) -1D) 0
(17)以下可以作为Visual Basic变量名的是。
A) A#AB) counstA
C) 3AD) ?AA
(18)设x=4,y=6,则以下不能在窗体上显示出“A=10”的语句是。
A) Print A=x+yB) Print”A=“;x+y
C) c中的数据是字符串
D) d中的数据是日期类型
(15)以下能从字符串”VisualBasic”中直接取出子字符串”Basic”的函数是。
A) LeftB) Mid
C) String D) Instr
(16)设a=4,b=3,c=2,d=1,下列表达式的值是。
a>b+1 Or c<d And b Mod c
A) TrueB) 1
C) -1D) 0
(17)以下可以作为Visual Basic变量名的是。
A) A#AB) counstA
C) 3AD) ?AA
(18)设x=4,y=6,则以下不能在窗体上显示出“A=10”的语句是。
A) Print A=x+yB) Print”A=“;x+y
C) Print “A=“+Str(x+y) D) Print”A=“&x+y
(19)假定有如下的命令按钮(名称为Command1)事件过程:
Private Sub Command1_Click()
x=InputBox(“输入:”,”输入整数”)
MsgBox”输入的数据是:”,,”输入数据:”+x
End Sub
程序运行后,单击命令按钮,如果从键盘上输入整数10,则以下叙述中错误的是。
A) x的值是数值10
B) 输入对话框的标题是“输入整数”
C) 信息框的标题是“输入数据:10”
D) 信息框中显示的是“输入的数据是:”
(20)在窗体上画1个命令按钮(名称为Command1)和1个文本框(名称为Text1),然
后编写如下事件过程:
Private Sub Command1_Click()
x=Val(Text1.Text)
(19)假定有如下的命令按钮(名称为Command1)事件过程:
Private Sub Command1_Click()
x=InputBox(“输入:”,”输入整数”)
MsgBox”输入的数据是:”,,”输入数据:”+x
End Sub
程序运行后,单击命令按钮,如果从键盘上输入整数10,则以下叙述中错误的是。
A) x的值是数值10
B) 输入对话框的标题是“输入整数”
C) 信息框的标题是“输入数据:10”
D) 信息框中显示的是“输入的数据是:”
(20)在窗体上画1个命令按钮(名称为Command1)和1个文本框(名称为Text1),然
后编写如下事件过程:
Private Sub Command1_Click()
x=Val(Text1.Text)
Select Case x
Case 1,3
y=x*x
Case Is>=10,Is<=-10
y=x
Case -10 To 10
y=-x
End Select
End Sub
程序运行后,在文本框中输入3,然后单击命令按钮,则以下叙述中正确的是。
A) 执行y=x*xB) 执行y=-x
C) 先执行y=x*x,再执行y=-xD) 程序出错
Case 1,3
y=x*x
Case Is>=10,Is<=-10
y=x
Case -10 To 10
y=-x
End Select
End Sub
程序运行后,在文本框中输入3,然后单击命令按钮,则以下叙述中正确的是。
A) 执行y=x*xB) 执行y=-x
C) 先执行y=x*x,再执行y=-xD) 程序出错
(21)设有命令按钮Command1的单击事件过程,代码如下:
Private Sub Command1_Click()
Dim a(30)As Integer
Private Sub Command1_Click()
Dim a(30)As Integer
For i=1 To 30
a(i)=Int(Rnd*100)
Next
For Each arrItem In a
If arrItem Mod 7=0 Then Print arrItem;
If arrItem>90 Then Exit For
Next
End Sub
对于该事件过程,以下叙述中错误的是。
A) a数组中的数据是30个100以内的整数
B) 语句For Each arrItem In a有语法错误
C) If arrItem Mod 7=0……语句的功能是输出数组中能够被7整除的数
D) If arrItem>90……语句的作用是当数组元素的值大于90时退出For循环
2006年4月笔试试卷第3页(共12页)2006年4月笔试试卷第4页(共12页)(22)设有命令按钮Command1的单击事件过程,代码如下:
a(i)=Int(Rnd*100)
Next
For Each arrItem In a
If arrItem Mod 7=0 Then Print arrItem;
If arrItem>90 Then Exit For
Next
End Sub
对于该事件过程,以下叙述中错误的是。
A) a数组中的数据是30个100以内的整数
B) 语句For Each arrItem In a有语法错误
C) If arrItem Mod 7=0……语句的功能是输出数组中能够被7整除的数
D) If arrItem>90……语句的作用是当数组元素的值大于90时退出For循环
2006年4月笔试试卷第3页(共12页)2006年4月笔试试卷第4页(共12页)(22)设有命令按钮Command1的单击事件过程,代码如下:
Private Sub Command1_Click()
Dim a(3,3)As Integer
For i=1 To 3
For j=1 To 3
a(i,j)=i*j+i
Next j
Next i
Sum=0
For i=1 To 3
Sum=Sum+a(i,4-i)
Next i
Print Sum
End Sub
运行程序,单击命令按钮,输出结果是。
A) 20B) 7
Dim a(3,3)As Integer
For i=1 To 3
For j=1 To 3
a(i,j)=i*j+i
Next j
Next i
Sum=0
For i=1 To 3
Sum=Sum+a(i,4-i)
Next i
Print Sum
End Sub
运行程序,单击命令按钮,输出结果是。
A) 20B) 7
C) 16 D) 17
(23)在窗体上画1个名称为Command1的命令按钮,然后编写如下事件过程:
Private Sub Command1_Click()
a=0
For i=1 To 2
For j=1 To 4
If j Mod 2<>0 Then
a=a-1
End If
a=a+1
Next j
Next i
Print a
End Sub
程序运行后,单击命令按钮,输出结果是。
(23)在窗体上画1个名称为Command1的命令按钮,然后编写如下事件过程:
Private Sub Command1_Click()
a=0
For i=1 To 2
For j=1 To 4
If j Mod 2<>0 Then
a=a-1
End If
a=a+1
Next j
Next i
Print a
End Sub
程序运行后,单击命令按钮,输出结果是。
A) 0B) 2
C) 3 D) 4
(24)窗体上有名称分别为Text1、Text2的2个文本框,有一个由3个单选按钮构成的控件数组Option1,如图1所示。程序运行后,如果单击某个单选按钮,则执行Text1中的数值与该单选按钮所对应的运算(乘以1、10或100),并将结果显示在Text2中,如图2所示。为了实现上述功能,在程序中的问号(?)处应填入的内容是。
图1图2 Private Sub Option1_Click(Index As Integer)
If Text1.Text<>”“Then
Select Case ?
Case 0
Text2.Text=Val(Text1.Text)
Case 1
Text2.Text=Val(Text1.Text)*10
Case 2
Text2.Text=Val(Text1.Text)*100
C) 3 D) 4
(24)窗体上有名称分别为Text1、Text2的2个文本框,有一个由3个单选按钮构成的控件数组Option1,如图1所示。程序运行后,如果单击某个单选按钮,则执行Text1中的数值与该单选按钮所对应的运算(乘以1、10或100),并将结果显示在Text2中,如图2所示。为了实现上述功能,在程序中的问号(?)处应填入的内容是。
图1图2 Private Sub Option1_Click(Index As Integer)
If Text1.Text<>”“Then
Select Case ?
Case 0
Text2.Text=Val(Text1.Text)
Case 1
Text2.Text=Val(Text1.Text)*10
Case 2
Text2.Text=Val(Text1.Text)*100
End Select
End If
End Sub
A) IndexB) Option1.Index
C) Option1(Index) D) Option1(Index).Value
(25)在窗体上画1个命令按钮,其名称为Command1,然后编写如下程序:
Private Sub Command1_Click()
Dim a(10)As Integer
Dim x As Integer
For i=1 To 10
a(i)=8+i
Next
x=2
Print a(f(x)+x)
End Sub
End If
End Sub
A) IndexB) Option1.Index
C) Option1(Index) D) Option1(Index).Value
(25)在窗体上画1个命令按钮,其名称为Command1,然后编写如下程序:
Private Sub Command1_Click()
Dim a(10)As Integer
Dim x As Integer
For i=1 To 10
a(i)=8+i
Next
x=2
Print a(f(x)+x)
End Sub
Function f(x As Integer)
x=x+3
f=x
End Function
程序运行后,单击命令按钮,输出结果为。
A) 12B) 15
C) 17D) 18
2006年4月笔试试卷第5页(共12页)2006年4月笔试试卷第6页(共12页)(26)以下关于过程的叙述中,错误的是。
A) 事件过程是由某个事件触发而执行的过程
B) 函数过程的返回值可以有多个
C) 可以在事件过程中调用通用过程
D) 不能在事件过程中定义函数过程
(27)在窗体上画3个标签、3个文本框(名称分别为Text1、二级VBText2和Text3)和1个命令按钮(名称为Command1),外观如图所示。
x=x+3
f=x
End Function
程序运行后,单击命令按钮,输出结果为。
A) 12B) 15
C) 17D) 18
2006年4月笔试试卷第5页(共12页)2006年4月笔试试卷第6页(共12页)(26)以下关于过程的叙述中,错误的是。
A) 事件过程是由某个事件触发而执行的过程
B) 函数过程的返回值可以有多个
C) 可以在事件过程中调用通用过程
D) 不能在事件过程中定义函数过程
(27)在窗体上画3个标签、3个文本框(名称分别为Text1、二级VBText2和Text3)和1个命令按钮(名称为Command1),外观如图所示。
编写如下程序:
Private Sub Form_Load()
Text1.Text=““
Text2.Text=““
Text3.Text=““
End Sub
制订和制定Private Sub Command1_Click()
x=Val(Text1.Text)
y=Val(Text2.Text)
Text3.Text=f(x,y)
End Sub
Function f(ByVal x As Integer,ByVal y As Integer)
Do While y<>0
tmp=x Mod y
x=y
Private Sub Form_Load()
Text1.Text=““
Text2.Text=““
Text3.Text=““
End Sub
制订和制定Private Sub Command1_Click()
x=Val(Text1.Text)
y=Val(Text2.Text)
Text3.Text=f(x,y)
End Sub
Function f(ByVal x As Integer,ByVal y As Integer)
Do While y<>0
tmp=x Mod y
x=y
y=tmp
Loop
f=x
End Function
运行程序,在Text1文本框中输入36,在Text2文本框中输入24,然后单击命令按钮,则在Text3文本框中显示的内容是。
A) 4B) 6
C) 8 D) 12
(28)窗体上有名称分别为Text1、Text2的2个文本框,要求文本框Text1中输入的数据小于500,文本框Text2中输入的数据小于1000,否则重新输入。为了实现上述功能,在以下程序中问号(?)处应填入的内容是。
Private Sub Text1_LostFocus()
Call CheckInput(Text1福原爱为什么会说中文,500)
End Sub
Private Sub Text2_LostFocus()
Loop
f=x
End Function
运行程序,在Text1文本框中输入36,在Text2文本框中输入24,然后单击命令按钮,则在Text3文本框中显示的内容是。
A) 4B) 6
C) 8 D) 12
(28)窗体上有名称分别为Text1、Text2的2个文本框,要求文本框Text1中输入的数据小于500,文本框Text2中输入的数据小于1000,否则重新输入。为了实现上述功能,在以下程序中问号(?)处应填入的内容是。
Private Sub Text1_LostFocus()
Call CheckInput(Text1福原爱为什么会说中文,500)
End Sub
Private Sub Text2_LostFocus()
Call CheckInput(Text2,1000)
End Sub
Sub CheckInput(t As ?,x As Integer)
If Val(t.Text)>x Then
MsgBox”请重新输入!”
End If
End Sub
A) TextB) SelText
C) ControlD) Form
(29)在窗体上画1个文本框,其名称为Text1,然后编写如下过程:
Private Sub Text1_KeyDown(KeyCode As Integer,Shift As Integer)
Print Chr(KeyCode)
End Sub
Private Sub Text1_KeyUp(KeyCode As Integer,Shift As Integer)
Print Chr(KeyCode+2)
End Sub
Sub CheckInput(t As ?,x As Integer)
If Val(t.Text)>x Then
MsgBox”请重新输入!”
End If
End Sub
A) TextB) SelText
C) ControlD) Form
(29)在窗体上画1个文本框,其名称为Text1,然后编写如下过程:
Private Sub Text1_KeyDown(KeyCode As Integer,Shift As Integer)
Print Chr(KeyCode)
End Sub
Private Sub Text1_KeyUp(KeyCode As Integer,Shift As Integer)
Print Chr(KeyCode+2)
End Sub
程序运行后,把焦点移到文本框中,此时如果敲击“A”键,则输出结果为。
A)A
AB)A
BC)A
CD)A
D
(30)为了使列表框中的项目呈多列显示,需要设置的属性为。
A) ColumnsB) Style
C) ListD) MultiSelect
程序运行后,把焦点移到文本框中,此时如果敲击“A”键,则输出结果为。
A)A
AB)A
BC)A
CD)A
D
(30)为了使列表框中的项目呈多列显示,需要设置的属性为。
A) ColumnsB) Style
C) ListD) MultiSelect
发布评论