2012年9月全国计算机等级考试二级笔试试卷
Visual Basic语言程序设计
(考试时间90分钟,满分100分)
整理:陈远跃
一、选择题(每小题2分,共70分)
下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。请将正确选项填涂在答题卡相应位置上,答在试卷上不得分。
(1)下列链表中,其逻辑结构属于非线性结构的是
A)双向链表B)带链的栈
C)二叉链表D)循环链表
(2)设循环队列的存储空间为Q(1:35),初始状态为front=rear=35。现经过一系列入队与退队运算后,front=15,rear=15,则循环队列中的元素个数为
A)20B)0或35
C)15D)16
(3)下列关于栈的叙述中,正确的是
A)栈底元素一定是最后入栈的元素B)栈操作遵循先进后出的原则
C)栈顶元素一定是最先入栈的元素D)以上三种说法都不对
(4)在关系数据库中,用来表示实体间联系的是
A)网状结构B)树状结构
C)属性D)二维表
(5)公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员。则实体部门和职员间的联系是
A)1:m联系B)m:n联系C)1:1联系D)m:1联系
(6)有两个关系R和S如下:
R S
A B C A B C
a 1 2 c3 1
b 2 1
c 3 1
则由关系R得到关系S的操作是
A)自然连接B)并C)选择D)投影
(7)数据字典(DD)所定义的对象都包含于
A)软件结构图B)方框图
C)数据流图(DFD图)D)程序流程图
(8)软件需求规格说明书的作用不包括
A)软件设计的依据
B)软件可行性研究的依据
C)软件验收的依据
D)用户与开发人员对软件要做什么的共同理解
(9)下面属于黑盒测试方法的是
A)边界值分析B)路径覆盖
C)语句覆盖D)逻辑覆盖
(10)下面不属于软件设计阶段任务的是
A)制定软件确认测试计划B)数据库设计
C)软件总体设计D)算法设计
(11)以下叙述中错误的是
A).vbp文件是工程文件,一个工程可以包含.bas文件
B).frm文件是窗体文件,一个窗体可以包含.bas文件
C).vbp文件是工程文件,一个工程可以由多个.frm文件组成
D).vbg文件是工程组文件,一个工程组可以由多个工程组成
(12)以下叙述中错误的是
A)在Visual Basic的窗体中,一个命令按钮是一个对象
B)事件是能够被对象识别的状态变化或动作
C)事件都是由用户的键盘操作或鼠标操作触发的
D)不同的对象可以具有相同的方法
(13)设x=3.3,y=4.5,表达式x-Int(x)+Fix(y)的值是
A)3.5 B)4.8 C)4.3 D)4.7 (14)窗体上有一个名称为Command1的命令按钮,其中部分代码如下:
Private Sub Command1_Click() Dim a(10) As Integer
Dim n As Integer
…… Call calc(a, n) ……
End Sub
calc过程的首行应该是
A)Sub calc(x() As Integer,n As Integer)
B)Public Sub calc(x() As Integer)
C)Private Sub calc(a(n) As Integer,n As Integer)
D)Public Sub calc(a As Integer,n As Integer) (15)设有如下程序:
Sub f(x As Integer, ByVal y As Integer) x = 2 * x
y = y + x
End Sub
Private Sub Command1_Click()
Dim a As Integer, b As Integer a = 6: b = 35
Call f(a, b)
Print a, b
End Sub
程序运行后,单击命令按钮Command1,输出结果为
A)6 47 B)12 47 C)6 35 D)12 35 (16)以下叙述中正确的是
A)窗体及窗体上所有控件的事件过程代码都保存在窗体文件中
B)在工程中只有启动窗体可以建立菜单
C)窗体名称必须与窗体文件的名称相同
D)程序一定是从某个窗体开始执行的
(17)窗体上有一个名称为Command1的命令按钮,其单击事件过程代码如下:
Private Sub Command1_Click()
Static x As Variant
n =0
x = Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10) While n <=4
x(n) =x(n + 5)
Print x(n);
n =n + 1
Wend
End Sub
运行程序,单击命令按钮Command1,窗体上显示的是A)1 2 3 4 5 B)6 7 8 9 10
C )2 3 4 5 6
D )6 2 3 4 5
(18)窗体上有一个名称为Labe11的标签和一个名称为Command1的命令按钮,命令按钮的单
击事件过程如下:
Private Sub Command1_Click()
x = InputBox("输入x :", , 0)
y = InputBox("输入y :", , 0)
Label1.Caption = x + y
End Sub
运行程序,单击命令按钮,在输入对话框中分别输入2、3,运行的结果是
A )程序运行有错误,数据类型不匹配
B )程序运行有错误,InputBox 函数的格式不对
C )在Labe11中显示5
D )在Labe11中显示23
(19)窗体上有一个名称为Shape1的形状控件和由三个命令按钮组成的名称为cmdDraw 的控件
数组。窗体外观如图所示(从上到下的3个命令按钮的下标值分别为0、1、2)。有事件过程如下:
Private Sub CmdDraw_Click(Index As Integer)
Select Case Index
Case 0
Shape1.Shape = 0
Case 1
Shape1.Shape = 1
Case 2
Shape1.Shape = 3
End Select
End Sub
当单击 “画圆”命令按钮时,会执行cmdDraw_Click 事件过程。以下叙述中正确的是
A )Case2分支有错,此Case 后面表达式的值应该与赋给Shape1.Shape 的值一致
B )程序运行有错,控件数组的下标应该从1开始
C )Index 是形状控件的参数
D )程序正常运行,形状控件被显示为圆形
(20)如果一个正整数从高位到低位上的数字依次递减,则称其为降序数(如:9632是降序数,
而8516则不是降序数)。现编写如下程序,判断输入的正整数是否为降序数。
Private Sub Command1_Click()
Dim n As Long
Dim flag As Boolean
n = InputBox("输入一个正整数")
s = Trim(Str(n))
For i = 2 To Len(s)
If Mid(s, i - 1, 1) < Mid(s, i, 1)
Then Exit For
Next i
If i = Len(s) Then flag = True Else flag = False If flag Then Print n; "是降序数" Else Print n; "不是降序数" End If End Sub 运行以上程序,发现有错误,需要对给flag 变量赋值的If 语句进行修改。以下正确的修改是
A )If i=Len(s)+1 Then flag=False Else flag=True
B )If i=Len(s)+1 Then flag=True Else flag= False
C )
If i=Len(s)-1 Then flag= False Else flag= True
D)If i=Len(s)-1 Then flag=True Else flag= False (21)现有以下程序:
Private Sub Command1_Click() c1 = 0
c2 = 0
For i =1 To 100
If i Mod 3 = 0 Then
c1 = c1 + 1 ElseIf i Mod 7 =0 Then
c2 = c2 + 1
End If
Next
Print c1 + c2
End Sub
此程序运行后输出的是在1~100范围内
A)同时能被3和7整除的整数个数
B)能被3或7整除的整数个数(同时被3和7整除的数只记一次)
C)能被3整除,而不能被7整除的整数个数
D)能被7整除,而不能被3整除的整数个数
(22)设菜单编辑器中各菜单项的属性设置如下表所示:
序号标题名称复选有效可见内缩符号
1 File File √√无
2 Open
OpenFile √√ 1
3 Save
SaveFile √ 1
basic语言入门软件4 Exit
EndOfAll √ 1
5 Help
ShowHelp
√√ 1 针对上述属性设置,以下叙述中错误的是
A)属性设置有错,存在“标题”与“名称”重名现象
B)运行程序,序号为“3”的菜单项不显示
C)运行程序,序号为“4”的菜单项不可用
D)运行程序,序号为“5”的菜单项前显示“√”
(23)窗体上有一个名称为Command1的命令按钮,并有如下程序:
Private Sub Command1_Click() x =15
Do While x > 0
x =x - 3
x = IIf(Int(x / 5) = x / 5, x + 2, x) Loop
Print x
End Sub
程序运行后,单击命令按钮Command1,输出结果为
A)0 B)-1 C)-2 D)-3 (24)以下关于通用对话框的叙述中,错误的是
A)若没有指定InitDir属性值,则起始目录为当前目录
B)用一个通用对话框控件可以建立几种不同的对话框
C)FileTitle属性指明了文件对话框中所选择的文件名
D)文件对话框用属性FilterIndex指定默认过滤器,它是一个从0开始的整数(25)窗体上有一个名称为Command1的命令按钮,并有如下程序:
Private Sub Command1_Click() Dim m As Integer, n As Integer m =InputBox("输入第一个数") n = InputBox("输入第二个数") Do While m <> n
Do While m > n
m = m - n
Loop
Do While n > m n =n - m
Loop
Loop
Print m
End Sub
该程序的功能是
A)求数值m和n的最大公约数B)求数值m和n的最小公倍数
C)求数值m和n中的较大数D)求数值m和n中的较小数
(26)窗体上有一个名称为Command1的命令按钮,其单击事件过程及有关函数过程如下:
Private Sub Command1_Click()
Dim n As Integer
n = add(5, 10)
Print n
End Sub
Function add(v1 As Integer, v2 As Integer, Optional v3) As Integer If Not IsMissing(v3) Then add = v1 + v2 + v3 Else
add = v1 + v2
End If
End Function
运行程序,单击命令按钮,以下叙述中正确的是
A)程序不能正常运行,因为函数add的参数定义有错
B)程序不能正常运行,因为函数定义与函数调用语句的参数个数不匹配C)程序能正常运行,结果是在窗体上显示15
D)程序能正常运行,结果是在窗体上显示510v3
(27)目录列表框Path属性所表示的含义是
A)当前驱动器或指定驱动器上的路径
B)当前驱动器或指定驱动器上的某目录下的文件列表
C)根目录下的文件列表
D)指定路径下的文件列表
(28)以下关于函数过程的叙述中错误的是
A)函数过程一定有返回值
B)函数过程一定有参数
C)函数过程可以在窗体模块和标准模块中定义
D)函数过程参数的类型与返回值的类型无关
(29)在窗体上画一个名称为Command1的命令按钮,然后编写如下程序:
Public Enum s
a = 4
b =3
End Enum
Private Sub Command1_Click() Dim x As Integer
x =a
If x >= 3 Then MsgBox "Pass!" End Sub
运行程序,其结果是
A)运行错误,因为Enum定义有错B)运行错误,因为x=a类型不匹配
C)运行正常结束,不显示任何信息D)运行正常,显示内容为“Pass!”信息框(30)设有如下程序:
Option Base 1
Private Sub Form_Click()
Dim a(5) As String, i As Integer For i =1 To 5
a(i) =Chr(Asc("A") + i)
Call f(a, i)
Next i
End Sub Sub f(ta() As String, n As Integer) Dim i As Integer
For i =1 To n
Print ta(i);
Next i
Print
End Sub
对上述程序,以下叙述中正确的是
A)程序有错,因为在过程f的定义中数组参数格式不正确
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论