1、国家二级( VB)机试模拟试卷 108及答案与解析 一、选择题 1 下列链表中,其逻辑结构属于非线性结构的是 ( A)二叉链表 ( B)循环链表 ( C)双向链表 ( D)带链的栈 2 设循环队列的存储空间为 Q(1: 35),初始状态为 front=rear=35。现经过一系列入队与退队运算后, front=15, rear=15,则循环队列中的元素个数为 ( A) 15 ( B) 16 ( C) 20 ( D) 0或 35 3 下列关于栈的叙述中,正确的是 ( A)栈底元素一定是最后入栈的元素 ( B)栈顶元素 一定是最先入栈的元素 ( C)栈操作遵循先进后出的原则 ( D)以上说法均错误
2、 4 在关系数据库中,用来表示实体间联系的是 ( A)属性 ( B)二维表 ( C)网状结构 ( D)树状结构 5 公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员。则实体部门和职员间的联系是 ( A) 1: 1联系 ( B) m: 1联系 ( C) 1: m联系 ( D) m: n联系 6 有两个关系 R和 S如下: 则由关系 R得到关系 S的操作是 ( A)选择 ( B)投影 ( C)自然连接 ( D)并 7 数据字典( DD) 所定义的对象都包含于 ( A)数据流图( DFD图 ) ( B)程序流程图 ( C)软件结构图 ( D)方框图 8 软件需求规格说明书
3、的作用不包括 ( A)软件验收的依据 ( B)用户与开发人员对软件要做什么的共同理解 ( C)软件设计的依据 ( D)软件可行性研究的依据 9 下面属于黑盒测试方法的是 ( A)语句覆盖 ( B)逻辑覆盖 ( C)边界值分析 ( D)路径覆盖 10 下面不属于软件设计阶段任务的是 ( A)软件总体设计 ( B)算法设计 ( C)制定软件确认测试计划 ( D)数据库设计 11 以下合法的 VB变量名是 ( A) _a ( B) yPrint ( C) a-b ( D) Type 12 以下关于 VB 特点的叙述中,错误的是 ( A) VB采用事件驱动的编程机制 ( B) VB程序能够以解释方式运
4、行 ( C) VB程序能够以编译方式运行 ( D) VB程序总是从 Form_Load事件过程开始执行 13 有如下数据定义语句: Dim a, b As Integer Dim x%, y as Integer 执行上述语句后,不是整型变量的是 ( A) a ( B) b ( C) x ( D) y 14 以下关于数组的叙述中,错误的是 ( A) Variant类型的数组中各数组元素的类型可以不同 ( B)各数组元素可以是不同类型的控件 ( C)各数组元素通过下标进行区别 ( D)各数组元素具有相同的名称 15 以下关于 VB 文件的叙述中,正确的是 ( A)标准模块文件的扩展名是 .frm
5、 ( B)一个 .vbg文件中可以包括多个 .vbp文件 ( C)一个 .vbp文件只能含有一个标准模块文件 ( D)类模块文件的扩展名为 .bas 16 以下表达式与 Int(3.5)的值相同的是 ( A) CInt(3.5) ( B) Val(3.5) ( C) Fix(3.5) ( D) Abs(3.5) 17 设: a = 2, b = 8, c = 6, d = 3,表达式 a b And Not (c d) Or d c的值是 ( A) 1 ( B) 0 ( C) True ( D) False 18 数学式 y x=10在 VB中应表示为 ( A) y*y x And 10 =x
6、 ( B) Sqr(y) x And x =10 ( C) Sqr(y) x Or x =10 ( D) y*y x Or x =10 19 设在一个工程的窗体中有如下代码: Public x As Integer Private Sub Form_Load() Dim y As Integer End Sub 在该工程的标准模块的声明部分有如下代码: Public a As Integer Private b As Integer 关于上述代码,以下叙述中错误的是 ( A)变量 x的作用域是整个工程 ( B)变量 y的作用域是 Form_Load过程 ( C)变量 a的作用域是整个工程 (
7、D)变量 b的作用域是整个标准模块 20 以下关于文件的叙述中,错误的是 ( A)顺序文件有多种打开文件的方式 ( B)读取顺序文件的记录时,只能从头至尾逐记录进行 ( C)顺序文件中各记录的长度是固定的 ( D)随机文件一般占用空间比较小 21 以下不属于 VB控件的是 ( A)框架 ( B)点 ( C)直线 ( D)形状 22 窗体上有一个名称为 Command1的命令按钮,一个名称为 Text1的文本框,其 Text属性值为 “VB Programming“。运行程序后,选中其中的 “VB“,并执行如下事件过程: Private Sub Command1_Click() Text1.Se
8、lText = “C+“ End Sub 则文本框中显示的内容为 ( A) VB ( B) VB Programming ( C)文本框被清空 ( D) C+ Programming 23 窗体上有一个名称为 VScroll1的垂直滚动条,为了设定单击滚动条两端箭头时的 Value增量值,应设置的属性是 ( A) LargeChange ( B) SmallChange ( C) Max ( D) Min 24 设窗体名称为 frmTest,为了在程序代码中将窗体的标题改为 “等级考试 “,其代码应该是 ( A) frmTest.Caption=“等级考试 “ ( B) Form1.Capti
9、on=“等级考试 “ ( C) frmTest.Title=“等级考试 “ ( D) Form1.Title=“等级考试 “ 25 要将单选按钮 Opt1设为被选中,应设置的属性是 ( A) Value ( B) Selected ( C) Enabled ( D) SetFocus 26 窗体上有一个名称为 Combo1的组合框,为了引用 Combo1中最后一个列表项,应使用的表达式是 ( A) Combo1.List(ListCount) ( B) Combo1.List(Combo1.ListCount - 1) ( C) Combo1.List(ListCount - 1) ( D)
10、Combo1.List(Combo1.ListCount) 27 对于文本框 Text1,能够获得按键的 ASCII码值的事件过程是 ( A) Text1_KeyUp ( B) Text1_KeyPress ( C) Text1_Click ( D) Text1_Change 28 命令按钮 Command1的 MouseUp事件过程结构如下: Private Sub Command1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) End Sub 则以下叙述中错误的是 ( A) X、 Y参数表示的是
11、 Command1左上角在窗体中的位置 ( B) Button参数用于确定按下的鼠标键 ( C) Shift参数用于确定是否按下了 Alt、 Ctrl或 Shift键 ( D) MouseUp表示抬起鼠标按键时触发的事件 29 通用对话框 Filter属性的作用是 ( A)设置对话框的标题 ( B)指定对话框所选择的文件名 ( C)指定对话框的打开方式 ( D)指定对话框中显示的文件类型 30 以下关于菜单的叙述中错误的是 ( A)对于同一窗体中的菜单,各菜单项的名称必须唯一 ( B)对于同一窗体中的菜单,各菜单项的标题必须唯一 ( C)菜单中各菜单项可以是控件数组元素 ( D)弹出式菜单的编
12、辑、定义在菜单编辑器中进行 31 窗体上有一个名称为 Command1的命令按钮,其单击事件过程如下: Private Sub Command1_Click() For i = 3 To 1 Step -1 Sum = 0 For j = 1 To i Sum = Sum + i * j Next Next Print Sum End Sub 运行 程序时,单击命令按钮,则窗体上显示的是 ( A) 1 ( B) 6 ( C) 18 ( D) 25 32 以下能够正常结束循环操作的程序段是 ( A) i = 5 Do i = i + 1 Loop Until i 0 i = i - 2 Loop
13、 ( D) i = 0 Do While i 1 And j 1 Then a(i, j) = a(a(i - 1, j - 1), a(i, j - 1) + 1 Else a(i, j) = i * j End If Next Next Print a(2, 2); a(3, 3) End Sub 运行程序,单击命令按钮,窗体上显示的是 ( A) 1 3 ( B) 2 1 ( C) 2 2 ( D) 3 3 35 窗体上有一个名称为 Command1的命令按钮,并有如下程序代码: Private Sub Command1_Click() Static a a = 1: b = 2: c =
14、 3 Call f(a, b, c) Print a; b; c End Sub Sub f(ByVal x, ByRef y, z) x = x + 1 y = y + 1 z = z + 1 End Sub 运行程序,单击命令按钮,窗体上显示的是 ( A) 1 3 3 ( B) 1 3 4 ( C) 2 3 3 ( D) 2 3 4 36 窗体上有一个名称为 Command1的命令按钮,单击该按钮时所实现的功能 Private Sub Command1_Click() Dim a(10) As Integer Dim x As Integer For i = 1 To 10 a(i) =
15、Int(Rnd * 100) Next x = InputBox(“输入 100 以内的整数: “) p = 0 For i = 1 To 10 If a(i) = x Then p = i Exit For End If Next If p = 0 Then Print “没有找到与输入数据相同的数! “ Else Print Str(x) + “在数组中的位置是 “ + Str(p) End If End Sub 对于上述事件过程,以下叙述中正确的是 ( A)本程序实际产生的随机数是 0-99 ( B)若产生的随机数中有相同数,则 p是其中最后一个数的位置 ( C)程序有错, p的初值设置
16、不对 ( D)程序有错, InputBox函数产生的数据与 x的类型不匹 配 37 窗体上有一个名称为 Command1的命令按钮,其单击事件过程如下: Private Sub Command1_Click() Dim s As Double s = 0: i = 1 Do While i a(i, j) Then y = a(i, j) Next s = s + a(i, i) Next Print x, y, s End Sub 关于以上程 序,以下叙述中错误的是 ( A)二维数组元素的值是不大于 99的随机整数 ( B)计算结果 x是二维数组各元素中的最大数 ( C)计算结果 y是二维数
17、组各元素中的最小数 ( D)计算结果 s是二维数组各行第一个元素之和 39 窗体上有一个名称为 Text1的文本框,一个名称为 Command1的命令按钮。命令按钮的单击事件过程如下: Dim x1 As Integer, x2 As Integer, x3 As Integer s = Trim(Text1.Text) strLen = Len(s) For i = 1 To strLen c = Mid(s, i, 1) Select Case c Case “0“ To “9“ x1 = x1 + 1 Case “A“ To “Z“ x2 = x2 + 1 Case “a“ To “z“
18、 x3 = 3 + 1 Case Else x4 = x4 + 1 End Select Next Print “x1“; x1, “x2“; x2, “x3“; x3, “x4“; x4 End Sub 以下关于上述程序的叙述中,正确的是 ( A) s是去掉文本框中字符串末尾的空格 ( B) Select Case c有误, Case后应该是一个表达式 ( C)各 Case分支条件有误,不能用 To 表示字符的取值区间 ( D) x4是字符串中非字母、非数字字符的个数 40 窗体上有一个名称为 Command1的命令按钮。要求编写程序,把文件 f1.txt的内容写到文件 f2.txt中,然后
19、将 f1.txt删除。命令按钮的单击事件过程如下: Private Sub Command1_Click() Open “c:f1.txt“ For Input As #1 Open “c:f2.txt“ For Output As #2 Do While Not EOF(2) Line Input #1, str1 Print #2, str1 Loop Close Kill “c:f1.txt“ End Sub 该程序运行时发生错误,应该进行的修改是 ( A)打开 f1.txt应该使用 Output 方式,打开 f2.txt 应该使用 Input 方式 ( B) Not EOF(2)应该改
20、为 Not EOF(1) ( C) Line Input应改为 Get ( D) Close语句改为 Close All 二、基本操作题 41 (1)在名称为 Form1、标题为 “鼠标光标形状 ”的窗体 :添加一个文本框,名称为 Text1。请通过属性窗口设置 适当属性,使得程序运行时,鼠标在文本框中时,鼠标光标为箭头 (Arrow)形状;在窗体中其他位置处,鼠标光标为十字 (Cross)形状。 注意:存盘时必须存放存考生文件夹下,工程文件名保存为 sjt1 vbp,窗体文什名保存为 sjt1 frm。 (2)在名称为 Form1的窗体上添加两个名称分别为 Iabel1、 Label2,标题
21、分别为 “开始位置 ”、 “选中字符数 ”的标签;添加三个文本框,名称分别为。 Text1、 Text2、 Text3,再添加一个名称为 Command1、标题为 “显示选中信息 ”的命令按钮。程序运行时,在 Text1中输入若干字符,并用鼠标选中部分文本后,单击 “显示选中信息 ”按钮,则把选中的第一个字符的顺序号在 Text2 中显示,选中的字符个数在 Text3中显示,如图所示。 要求:画出所有控件,编写命令按钮的 Click事件过程。 注意:要求程序中不得使用变量,事件过程中只能写两条语句,分别用于显示第一个字符的顺序号和显示选中的字符个数。存盘时必须存放在考生文件夹下,工程文件名保存
22、为 sjt2 vbp,窗体文件名保存为 sjt2 frm。三、简单应用题 42 (1)考生文件夹中有工程文件 sjt3 vbp。窗体上 有一个名称为 Iabel1、标题为 “标签控件 ”的标签;有一个名称为 Command1、标题为 “命令按钮 ”的命令按钮。单击上述两控件中的任一控件,则在标签 Label2中显示所单击控件的标题内容 (标题内容前添加 “单击 ”二字 ),下图是单击命令按钮后的窗体外观。请去掉程序中的注释符,把程序中的 ?改为正确的内容。注意:考生不得修改窗体文件中已经存在的控件和程序,最后程序按原文件名存盘。 (2)在考生文件夹下有一个工程文件 sjt4 vbp,其窗体上有
23、一个由八个图片框控件组成的控件数组、两个命令按钮及一个计时器控件,如图 1所示。 程序功能: 将计时器控件设置为每隔 0 5秒触发一次 Timer事件。运行程序时,只显示下标为 0的图片框控件数组冗素,其他图片框均不可见。单击 “开始 ”按钮,数组中的每个图片框白左至右依次显示,时间间隔为 0 5秒,产生 “月亮 ”从左向右移动的效果,如图 2所示。,月亮移到右端后再从左端莆新开始。单击 “停止 ”按钮, “月亮 ”停止移动。 要求:按照题日要求设置控件属性,去掉程序中的注释符,把程序中的 ?改为正确的内容。 注意:不能修改程序的其他部分和控件属性,最后将修改后的文件按原文件名进行存盘。四、综
24、合应用 题 43 在考生文件夹下有一个工程文件 sjt5 vbp,其窗体上有两个标签 L1和 L2,标题分别为 “口令 ”和 “允许次数 ”;一个命令按钮 C1,标题为 “确定 ”;两个文本框名称分别为 Text1和 Text2。其中 Text1用来输入口令 (输入时,文本框内容显示 “*”),初始内容为空; Text2的初始内容为3。并给出了 C1的事件过程,但不完整,要求去掉程序中的注释符,把程序中的 ?改为正确的内容,使得程序运行时,在 Text1中输入口令后,单击 “确定 ”,如果输入的是 “123456”则在 Text1中显示 “口令正确 ”;如果输入 其他内容单击 “确定 ”后,弹出错误提示对话框 (如图所示 ),并且 Text2中的数字减 1。最多可输入 3次口令,若 3次都输入错误,则禁止再次输入。 注意:不能修改程序中的其他部分。最后将修改后的文件按原文件名存盘。国家二级( VB)机试模拟试卷 108答案与解析