1、国家二级 VB机试(选择题)模拟试卷 134 及答案与解析 一、选择题 1 下列叙述中正确的是 ( A)结点中具有两个指针域的链表一定是二叉链表 ( B)结点中具有两个指针域的链表可以是线性结构,也可以是非线性结构 ( C)二叉树只能采用链式存储结构 ( D)循环链表是非线性结构 2 某二叉树的前序序列为 ABCD,中序序列为 DCBA,则后序序列为 ( A) BADC ( B) DCBA ( C) CDAB ( D) ABCD 3 下面不能作为软件设计工具的是 ( A) PAD图 ( B)程序流程图 ( C)数 据流程图 (DFD图 ) ( D)总体结构图 4 逻辑模型是面向数据库系统的模型
2、,下面属于逻辑模型的是 ( A)关系模型 ( B)谓词模型 ( C)物理模型 ( D)实体 -联系模型 5 运动会中一个运动项目可以有多名运动员参加,一个运动员可以参加多个项目。则实体项目和运动员之间的联系是 ( A)多对多 ( B)一对多 ( C)多对一 ( D)一对一 6 堆排序最坏情况下的时间复杂度为 ( A) O(n 15) ( B) O(nlog 2 n) ( C) ( D) O(log 2 n) 7 某二叉树中 有 15个度为 1的结点, 16个度为 2的结点,则该二叉树中总的结点数为 ( A) 32 ( B) 46 ( C) 48 ( D) 49 8 下面对软件特点描述错误的是
3、( A)软件没有明显的制作过程 ( B)软件是一种逻辑实体,不是物理实体,具有抽象性 ( C)软件的开发、运行对计算机系统具有依赖性 ( D)软件在使用中存在磨损、老化问题 9 某系统结构图如下图所示 该系统结构图中最大扇入是 ( A) 0 ( B) 1 ( C) 2 ( D) 3 10 设有表示公司和员工及雇佣的三张表,员工可在多家公司兼职,其中公司 (公司号,公司名,地址,注册资本,法人代表,员工数),员工(员工号,姓名,性别,年龄,学历),雇佣(公司号,员工号,工资,工作起始时间)。其中表的键为公司号,表的键为员工号,则表的键(码)为 ( A)公司号,员工号 ( B)员工号,工资 ( C
4、)员工号 ( D)公司号,员工号,工资 11 表达式 Int(5.3)+Int(-5.8) Fix(5.3)+Fix(-5.8)的值是 ( A) True ( B) False ( C) 1 ( D) 0 12 下面肯定是一个整型变量的是 ( A) x% ( B) Int_x ( C) x$ ( D) x# 13 设变量 MyName(字符串型), Age(整型)分别表示一个人的姓名和年龄,要设计一个逻辑表达式,当该人姓张,并且超过 60岁,则表达式的值为 True,下面正确的是 ( A) Right(MyName, 1) = “张 “ And Age 60 ( B) Left(MyName,
5、 Len(“张 “) = “张 “ And Age 60 ( C) Left(MyName, Len(“张 “) = “张 “ Or Age 60 ( D) MyName = “张 “ And Age 60 14 下列说法中正确的是 ( A)引用属性的一般格式为:对象名 _属性名称 ( B)对象是有属性和行为方式的实体 ( C)属性是对象的特性,所有对象都具有相同的属性 ( D)对象的属性只能在属性窗口中设置 15 下列叙述中正确的是 ( A)不同的对象可以具有相同名称的方法 ( B) abcd是一个合法的字符串常量 ( C)语句 Dim a(1 To 6, -2 To 4) As Integ
6、er定义数组时出错 ( D)向随机文件中写数据时,既可用 Write #语句也可用 Put #语句 16 对于复选框和单选钮,下列叙述中正确的是 ( A)复选框和单选钮都只能在多个选项中选定一项 ( B)复选框和单选钮都有 Value属性,取值均为 True或 False ( C)单选钮和复选框都可以响应双击( DblClick)事件 ( D)为了使复选框禁用,应将其 Enabled属性设置为 False 17 程序运行时,当用鼠标点击滚动条两端的箭头按钮时,不会产生的结果是 ( A)改变 Value属性的值 ( B)激活 Scroll事件 ( C)激活 Change事件 ( D)滚动框移动
7、18 下 面说法中错误的是 ( A)为使名称为 Timer1的计时器控件能每隔 2秒触发一次 Timer事件,则在程序代码中应写的语句是 Timer1.Interval = 2000 ( B)可以将计时器控件的 Enabled属性设置为 False,使其不能触发 Timer事件 ( C)为使显示到图像框中的图像能根据图像框的大小自动缩放,则应将图像框的Stretch属性值设置为 True ( D)在设计阶段,把已复制到剪贴板上的图像粘贴到图片框或图像框中,可以将该图片装入图片框或图像框 19 如果一个复选框被选中,则 ( A)它 的 Caption 属性的值为 1 ( B)它的 Value属性
8、的值为 1 ( C)它的 Value属性的值为 True ( D)其他复选框被自动设置为未选中 20 在窗体上建立一个标签数组,名称为 Label1,下标从 0开始,自左至右顺序增大,然后编写如下事件过程: Private Sub Form_Click() For Each Label In Label1 Label1(i).Caption = Label1(i).Index i = i + 1 Next End Sub 运行程序,单击窗体,在 4个标签(从左至右)中显示的内容分别为 ( A) 0 1 2 3 ( B) 1 2 3 4 ( C) 3 2 1 0 ( D)出错 21 设列表框的名
9、称为 List1,则下列与 List1.Text中的值相同的属性值是 ( A) List1.ListCount ( B) List1.List(List1.ListIndex) ( C) List1.List(ListCount-1) ( D) List1.ListIndex 22 下面关于直线控件的叙述中正确的是 ( A)改变 X1、 Y1、 X2、 Y2属性的值,可以改变直线显示的长短和方向 ( B) X1、 Y1属性的值表示直线左端点的坐标 ( C)如果属性 X1的值等于属性 X2的值,则说明直线是水平显示的 ( D)上述都是正确的 23 有如下程序代码: Private Sub For
10、m_Click() Dim Sum As Integer Sum = 0 While Sum = a(k) Then a(k + 1) = x Exit Do Else a(k + 1) = a(k) If k = 0 Then a(k) = x k = k - 1 End If Loop Until k 18 Print a End Sub 程序运行过程中单击窗体,输出结果是 ( A) 1 ( B) 20 ( C) 16 ( D) 21 28 在窗体上画一个名称为 Text1的文本框和一个名称为 Command1的命令按钮,然后编写以下程序代码: Option Base 1 Private
11、Sub Command1_Click() Dim arr1(4, 4) As Integer Dim i As Integer, j As Integer For i = 1 To 2 For j = 2 To 3 arr1(i, j) = i + j * 10 Next j Next i Text1.Text = arr1(2, 3) + arr1(3, 4) End Sub 运行程序,单击 Command1,则在文本框 Text1中显示的结果为 ( A) 75 ( B) 23 ( C) 57 ( D) 32 29 执行以下程序时,在窗体上单击鼠标后,将出现输入对话框,此时,直接按下回车键,
12、窗体上的输出结果是 Private Sub Form_Click() Dim S As String S = InputBox(“input data“, “important“, “学 习 VisualBasic“) Print UCase(Mid(S, InStr(S, “i“), 2) End Sub ( A) IN ( B) IM ( C) IS ( D) IC 30 设有工程文件 Proj,其中含有 Form1窗体、 Form2窗体、标准模块Module1.bas,在 Form1窗体模块的通用声明段中书写了如下语句 Public X As Integer,在 Form1窗体模块中还定
13、义了通用过程 LocalSub。则以下说法中正确的是 ( A)可以在整个 Proj工程中的所有模块中使用变量 X ( B)只能在窗体 Form1和 Form2中使用变量 X,但不能在标准模块 Module1中使用变量 X ( C)在标准模块 Module1中可以使用变量 X,但在窗体 Form2中不能使用变量 X ( D)变量 X的作用范围不包含 Form1中的 LocalSub 31 下面关于数组声明: Dim arr() As Integer 的叙述中正确的是 ( A) arr是整型数组,其元素个数是默认值,为 10 ( B) arr是整型数组,其元素个数不确定,需要在后面再用 ReDim
14、语句定义 ( C) arr是无参数的函数,其返回值的类型是整型 ( D)上述都是错误的 32 下列关于 Sub Main过程的说法中正确的是 ( A) Sub Main过程属于通用过程 ( B) Sub Main过程属于事件过程 ( C) Sub Main过程必须出现在窗体模块中 ( D) Sub Main过程不能作为启动对象 33 下面关于菜单的叙述中正确的是 ( A)程序运行时,菜单上显示的是菜单项的名称( Name属性的值) ( B)要想使某个菜单项被选中时能够完成某项任务,必须为它编写事件过程 ( C)如果用菜单编辑器编辑了一个下拉式菜单,程序中所有窗体都会显示这 个菜单 ( D)要显
15、示弹出式菜单,应调用该菜单的 PopupMenu方法 34 设通用对话框的名称为 CommonDialog1,执行语句 CommonDialog1.Action = 3,则打开的对话框是 ( A)颜色对话框 ( B)字体对话框 ( C)打开文件对话框 ( D)保存文件对话框 35 在窗体上画一个名称为 Text1的文本框,然后编写如下事件过程: Private Sub Form_Load() Text1.Text = “ End Sub Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer) Const Alt = 4 C
16、onst Key_F2 = C Next i End Sub 以上程序的功能是 ( A)输出从键盘上输入的字符串,计算其长度并输出 ( B)输出从键盘上输入的字符串,统计字符串中字符 “D“的个数并输出 ( C)输出从键盘上输入的字符串,找出其中的字符 “D“并输出 ( D)把从键盘上输入的字符串中的所有字符换成字符 “D“并输出 38 在窗体上画一个名称为 Command1的命令按钮,然后编写如下事件过程 : Private Sub Command1_Click() Dim x As Integer, y As Integer Dim s As String s = “2013-2014“
17、x = Int(Rnd(1) + 100 y = Val(Left(s, 3) Select Case x + y Case Is 301 Print “分支 1“ Case 300 To 301 Print “分支 2“ Case Is 0结果为 False。故正确答案为 B选项。 12 【正确答案】 A 【试题解析】 选项 B中, x也可能是字符类型;选项 C 中, $是字符串类型符;选项 D中, #是双精度浮点数类型符。故正确答案为选项 A。 13 【正确答案】 B 【试题解析】 Left( s, n)是从字符串的左端起截取 n个字符; Right( s, n)是从字符串的右端起截取 n
18、 个字符;姓名是姓在左,名在右,故 A选项错误。将 “张“赋值给变量 MyName,不符合题目要求,故 D选项错误。函数 Len(s)返回字符串 s的长度,即所包含的字符的个数。 Left(MyName, Len(“张 “) = “张 “ And Age 60表示当该人姓张,并且超过 60岁,表达式的值为 True,故正确答案为 B选项。 14 【正确答案】 B 【试题解析】 引用属性的格式为:对象名 .属性名称, A选项错误。不同的对象具有不同的属性, C选项错误。对象的属性既可通过属性窗口设置也可通过程序代码来设置, D选项错误。故正确答案为 B 选项。 15 【正确答案】 A 【试题解析
19、】 字符串常量由字符组成,可以是双引号和回车符以外的任何 ASCII字符,选项 B 中应该用一对双引号括起来。选项 C所定义的数组正确, Write#语句的功能是向顺序文件写入记录, Put#语句的功能是把 “变量 “的内容写入由 “文件“号所指定的磁盘文件中,故本题正确选项为 A。 16 【正确答案】 D 【试题解析】 复选框,可以在多个选项中选定多个选项,故选项 A错误。单选按钮和复选框都有 Value值,取值不同,单选按钮取值为布尔型,而复选框的取值为数值型,故答案 B错误。单选按钮和复选框的主要事件是 “单击事件 “,而不是 “双击事件 “,故选项 C错误。当将复选框的 Enabled
20、 属性设置为 False时,禁用复选框。故本题正确答案为 D选项。 17 【正确答案】 B 【试题解析】 对滚动条的操作一般就是移动,滚动条事件有 Scroll事件和Change事件,故选项 A、 C和 D均正确;本题正确答案为 B。 18 【正确答案】 D 【试题解析】 图形文件的装入有两种方式:一是在属性窗口中装入,二是在程序代码中用 LoadPicture 函数装入,复制到粘贴板上的图像不能装入图片框或图像框。故正确答案为选项 D。 19 【正确答案】 B 【试题解析】 复选框 Value属 性,用来返回或设置复选框的状态,其取值为: 0-Unchecked 为默认值,表示没有选中该复选
21、框; 1-Checked 表示选中该复选框; 2-Grayed 表示复选框被禁止。故本题正确答案为 B 选项。 20 【正确答案】 A 【试题解析】 控件数组由一组具有相同名称和类型,且事件过程也相同的控件组成,每个控件(相当于数组元素)都有唯一的索引号( Index,相当于数组元素的下标)。标签 Label1.Caption 用来显示在标签标题中显示的文本。由题知,标签数组 Label1,下标从 0开始,自左至右按顺序增大,故 Label1(0).index = 0;Label1(1).index = 1; Label1(2).index = 2; Label1(3).index = 3;故
22、本题正确答案为A。 21 【正确答案】 B 【试题解析】 列表框的 List属性用来列出或设置列表项的内容; ListIndex设置返回当前被选择项目的索引号; ListCount返回列表框中项目数量的数值。List1.List(List1.ListIndex)返回索引为 List1.ListIndex 的值,题目 List1.Text返回当前被选择 项目的内容,故正确答案为选项 B。 22 【正确答案】 A 【试题解析】 X1, Y1 表示直线的起点坐标,选项 B 错误; X1 和 X2的值相等,表示直线是垂直显示的,选项 C错误。故正确答案为选项 A。 23 【正确答案】 C 【试题解析】
23、 While循环只有在 “条件 “为真( True)的情况下执行循环体。如果条件从一开始不成立,则一次循环也不执行。本题程序运行时, sum=0,符合条件sum18为假,执行循环体, a=6+5=11,由于1118为假,继续执行循环体,得 a=11+5=16,由于 1618为假,继续执行循环体,得 a=16+5=21, 2118为真,结 束循环。故本题正确答案为 D。 28 【正确答案】 D 【试题解析】 程序开头定义了 Option Base 1 这时定义二维数组下标从 1开始;arr1(1,2)=1+2*10=21; arr1(1,3)=1+3*10=31; arr1(2,2)=2+2*1
24、0=22;arr1(2,3)=2+3*10=32;整型数组中未定义的数组元素值均默认为 0。故arr1(2,3)+arr1(3,4)=32+0=32;本题正确答案为 D。 29 【正确答案】 C 【试题解析】 InputBox 函数的格式为 InputBox(prompt, title , default ,xpos, ypos , helpfile,context),题中 prompt: “input data“用来提示用户输入; “important“是对话框的标题。 default: “学习 VisualBasic“即输入对话框的默认显示信息,并在用户没有输入的情况下,作为默认输入。因此
25、在出现对话框时,直接按回车键,故 S 的值为默认值即 S=“学习 VisualBasic“。字符串匹配函数Instr(s1,s2):在字符串 s1 中查找 s2的位置,返回值为 s2的第 一个字符在 s1中的位置,若找不到,则返回值为 0。 InStr(S, “i“)在字符串 “学习 VisualBasic “中查找“i“的位置,返回值为 4。 Mid (s,n1, n2)是字符串截取函数,从 s的第 n1个字符开始,向后截取 n2个字符,故 Mid(S,4,2)=is; UCase函数将字符串中的小写字母转换为大写字母。故正确答案为 C选项。 30 【正确答案】 A 【试题解析】 全局变量的
26、作用域最大,也称为全程变量,可作用于整个应用程序中的每个模块和过程。全局变量必须用 Public或 Global 语句声明。 故本题正确答案为 A。 31 【正确答案】 B 【试题解析】 arr是整型数组,其元素个数不确定,需要在其后通过 ReDim语句来定义。本题正确答案为 B。 32 【正确答案】 A 【试题解析】 Sub Main 过程属于通用过程,不是事件过程,选项 B错误;如果一个应用程序中有多个窗体,如果需要在运行窗体程序之前先执行一些操作,可以将这些操作写在 Sub Main 过程中,选项 C错误;单击对话框中的 “启动对象 “框右端的箭头,显示出当前工程中各窗体的名字和 Sub
27、 Main,可以定义启动工程时先启动的窗 体或 Sub Main,选项 D错误;故正确答案为选项 A。 33 【正确答案】 B 【试题解析】 程序运行时,菜单上显示的是标题( Caption属性值)而不是Name属性值。故选项 A错误;用菜单编辑器编辑了一个下拉式菜单,程序中所有窗体都会显示这个菜单。显然错误,只能在当前窗体中显示。故选项 C错误;显示弹出式菜单,首先用菜单编辑器建立菜单,然后再调用 PopupMenu 方法弹出显示,故选项 D错误;本题正确答案为 B。 34 【正确答案】 A 【试题解析】 通用对话框 CommonDialog 的 Action 属性设置为 3,表示打开颜色对
28、话框。故正确答案为选项 A。 35 【正确答案】 D 【试题解析】 KeyDown 事件的参数 KeyCode表示按键的键盘码,此题为&H71;参数 Shift表示在该事件发生时相应 Shift、 Ctrl和 Alt键的状态,用一个3位的二进制数表示,只有 Shift被按下时为 001。按下 Shift+F2 键,条件KeyCode = Key_F2 为 False,即 F2D = False,文本框不显示内容。故正确答案为选项 D。 36 【正确答案】 B 【试题解析】 在默认的 情况下,系统把设计的第一个窗体作为 “启动窗体 “。在执行程序时,只有 “启动窗体 “才能自动显示出来,而其他窗
29、体必须通过 Show 方法才能被显示出来。故选项 A和 C错误;不同窗体中的控件可以完全一样,一个窗体可以访问其他窗体控件中的数据。故选项 D错误;本题正确答案为 B。 37 【正确答案】 B 【试题解析】 InputBox 函数可以产生一个对话框,作为输入数据的界面,等待用户输入数据,并且返回输入的内容。求字符串长度函数 Len(s),返回字符串的长度,即所包含的字符个数。字符串截取函数 Mid$(s,n1,n2),从 s第 n1个字符开始,向后截取 n2个字符。当程序开始执行时,等待用户从键盘输入整数,用于控制第一个循环执行次数。进入第一个 For循环,等待用户输入字符串,计算该字符串长度
30、,进入第二个 For 循环,主要作用是从上述字符串逐一查找字符串中字符 D出现的个数,最后将其输出。故本题正确答案为选项。 38 【正确答案】 B 【试题解析】 Rnd 英文全称 Random,意随机数, Rnd*100生成一个取值在 0,100)之间的随机数(注意不包含 100)。取整函数 Int( x),英文全称: Integer,返回值 为不大于自变量 x的最大整数, Int(Rnd(1)=0, x=100。类型转换函数Val(s),返回值为字符串表达式 s中所包含的数值,若遇到字母(指数符号除外)则终止转换。字符串截取函数 Left$(s,n),截取字符串 s左边的 n 个字符。Lef
31、t(s,3)=201, Val(s)=Val(201)=201。 x+y=100+201=301;满足 300 To 301,故最后输出的结果是分支 2,本题正确选项为 B。 39 【正确答案】 B 【试题解析】 本题中 fun()函数内声明 Static局部变量,该变量在程 序执行到该对象的声明处时被首次初始化,即以后的函数调用不会被初始化,其值始终驻留在全局数据区,直到程序运行结束。在过程 fun()中对 a值的改变在下次调用时 a值仍为上次调用结束时的值。 Command1_Click()过程中的第一个 For循环执行 3次,即 fun()过程被调用 3次,静态局部变量 a具有保留上次执行结果的特点,三次循环 a的值分别为 1, 2, 3。所以 3次输出的值为 1, 4,9。而Command1_Click()过程中的第二个 For循环也执行 3次,即 proc()过程也被调用 3次,每次局部变量 a的初始值均为 0, 执行 a=a+1后, a=1。所以 3次输出的值为 1, 2, 3。故正确答案为选项 B。 40 【正确答案】 A 【试题解析】 文本框 Text的 Change()事件表示当 Text的内容变化时触发操作; LostFocus()事件表示文本框释放焦点时引发的操作。因题目要求同步显示在文本框 Text2中,故正确答案为选项 A。
copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1