1、VB笔试模拟试卷 57及答案与解析 1 算法分析的目的是 _。 ( A)找出数据结构的合理性 ( B)找出算法中输入和输出之间的关系 ( C)分析算法的易懂性和可靠性 ( D)分析算法的效率以求改进 2 n个顶点的强连通图的边数至少有 _。 ( A) n-1 ( B) n(n-1) ( C) n ( D) n+1 3 已知数据表 A中每个元素距其最终位置不远,为节省时间,应采用的算法是 _。 ( A)堆排序 ( B)直接插入排序 ( C)快速排序 ( D)直接选择排序 4 用链表表示线性表的优点是 _。 ( A)便于插入和删除操作 ( B)数据元素的物理顺序与逻辑顺序相同 ( C)花费的存储空
2、间较顺序存储少 ( D)便于随机存取 5 下列不属于结构化分析的常用工具的是 _。 ( A)数据流图 ( B)数据字典 ( C)判定树 ( D) PAD图 6 软件开发的结构化生命周期方法将软件生命周期划分成 _。 ( A)定义、开发、运行维护 ( B)设计阶段、编程阶段、测试阶段 ( C)总体设计、详细设计、编程调试 ( D)需求分析、功能定义、系统 设计 7 在软件工程中,白箱测试法可用于测试程序的内部结构。此方法将程序看做是 _。 ( A)循环的集合 ( B)地址的集合 ( C)路径的集合 ( D)目标的集合 8 在数据管理技术发展过程中,文件系统与数据库系统的主要区别是数据库系统具有
3、_。 ( A)数据无冗余 ( B)数据可共享 ( C)专门的数据管理软件 ( D)特定的数据模型 9 分布式数据库系统不具有的特点是 _。 ( A)分布式 ( B)数据冗余 ( C)数据分布性和逻辑整体性 ( D)位置透明性和 复制透明性 10 下列说法中,不属于数据模型所描述的内容的是 _。 ( A)数据结构 ( B)数据操作 ( C)数据查询 ( D)数据约束 11 以下叙述中错误的是 _。 ( A)在工程资源管理器窗口中只能包含 个工程文件及属于该工程的其他文件 ( B)以 .BAS为扩展名的文件是标准模块文件 ( C)窗体文件包含该窗体及其控件的属性 ( D) 个工程中可以含有多个标准
4、模块文件 12 以下叙述中错误的是 _。 ( A)打开 个工程文件时,系统自动装入与该工程有关的窗体 、标准模块等文件 ( B)保存 Visual Basic程序时,应分别保存窗体文件及工程文件 ( C) Visual Basic应用程序只能以解释方式执行 ( D)事件可以由用户引发,也可以由系统引发 13 以下能正确定义数据类型 TelBook的代码是 _。 ( A) Type TelBook Name As String *10 TelNum As Integer End Type ( B) Type TelBook Name As String*10 TelNum As Integer
5、End TelBook ( C) Type TelBook Name String*10 TelNum Integer End Type TelBook ( D) TypedefTelBook NameString*10 TelNum Integer End Type 14 以下声明语句中错误的是 _。 ( A) Constvar1=123 ( B) Dimvar2=ABC ( C) Dim intSum As Integer ( D) Static var3 As Integer 15 往窗体 Form1上添加一个列表框控件 List1,并编写如下代码: Private Sub Form_L
6、oad() For i=0 To 6 List1.AddItemi Next i End Sub 为了在程序运行时,按住 Ctrl键单击列表中的项目可以选中多个项目,可以设置 List1的属性 _。 ( A) List1.List ( B) List1.ListIndex ( C) List1. MultiSelect ( D) List1.Text 16 程序运行后,在窗体上单击鼠标,此时窗体不会接收到的事件是 _。 ( A) MouseDown ( B) MouseUp ( C) Load ( D) Click 17 设 a=10, b=5, c=1,执行语句 Print a b c后,窗
7、体上显示的是 _。 ( A) True ( B) False ( C) 1 ( D)出错信息 18 在循环体中,可以使程序转让控制权,以便让操作系统 处理其他的事件的语句是 _。 ( A) Exit Do ( B) DoEvents ( C) End ( D) Unload 19 以下能判断是否到达文件尾的函数是 _。 ( A) BOF ( B) LOC ( C) LOF ( D) EOF 20 如果 个工程含有多个窗体及标准模块,则以下叙述中错误的是 _。 ( A)如果工程中含有 SubMain过程,则程序一定首先执行该过程 ( B)不能把标准模块设置为启动模块 ( C)用 Hide方法只是
8、隐藏一个窗体,不自纵内存中清除该窗体 ( D)任何时该最多只有 个窗体是活动窗体 21 窗体的 MouseDown事件过程 Form _ MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)有 4今参数,关于这些参数,正确的描述是 _。 ( A)通过 Button参数判定当前按下的是哪一个鼠标键 ( B) Shift参数只能用来确定是否按下 Shift键 ( C) Shift参数只能用来确定是否按下 Alt和 Ctrl键 ( D)参数 X, Y用来设置鼠标当前位置的坐 标 22 设组合框 Combol中
9、有 3个项目,则以下能删除最后一项的语句是 _。 ( A) Combol.RemoveItem Text ( B) Combol.RemoveItem 2 ( C) Combol.RemoveItem 3 ( D) Combol.RemoveItem Combol.Listcount 23 以下关于焦点的叙述中,错误的是 _。 ( A)如果文本框的 TabStop属性为 False,则不能接收从键盘上输入的数据 ( B)当文本框失去焦点时,触发 LostFocus事件 ( C)当文本框的 Enabled属性为 False时,其 Tab顺序不起作用 ( D)可以用 TabIndex属性改变 Ta
10、b/顺序 24 如果要在菜单中添加一个分隔线,则应将其 Caption属性设置为 _。 ( A) = ( B) * ( C) num=num+2.4 Loop End Sub 程序运行后 ,单击命令按钮,则窗体上显示的内容是 _。 ( A) 13.45.8 ( B) 1 3 5 ( C) 1 4 7 ( D)无数据输出 29 在窗体上画 个名称为 Command1的命令按钮,然后编写如下事件过程: Private Sub Command1_click() Dim a As Integer,s As Integer a=8 s=1 Do s=s+a a=a-1 Loop While a =0 P
11、rint s; a End Sub 程序运行后,单击命令按钮,则窗体上显示的内容,是 _。 ( A) 79 ( B) 340 ( C) 97 ( D)死循环 30 在窗体上画 个名称为 Text1的文本框,并编写如下程序: Private Sub Form_Load() Show Text1.Text=“ “ Text1.SetFocus End Sub Private Sub Form_MouseUp(Button As Integer,Shift As Integer,X As Single,Y As Single) Print “程序设计 “ End Sub Private Sub Te
12、xt1_KeyDown(KeyCode As Integer,Shift As Integer) Print “Visual Basic“; End Sub 程序运行后,如果按 A键,然后单击窗体,则窗体上显示的内容是 _。 ( A) Visual Basic ( B)程序设计 ( C) A程序设计 ( D) Visual Basic程序设计 31 设有如下程序: Private Sub Command1_Click() Dim sum As Double, x As Double sum=0 n=0 For i=1 To 5 x=n/i n=n+1 sum=sum+x Next End Su
13、b 该程序通过 For循环计算 个表达式的值,这个表达式是 _。 ( A) 1+1/2+2/3+3/4+4/5 ( B) 1+1/2+2/3+3/4 ( C) 1/2+2/3+3/4+4/5 ( D) 1+1/2+1/3+1/4+1/5 32 在窗体上画一个名称为 Command1的命令按钮,然后编写如下代码: Option Base 1 Private Sub Command1_Click() d=0 c=10 x=Array(10, 12, 21,32, 24) For i=1 To 5 If x(i) c Then d=d+x(i) c=x(i) Else d=d-c End If Ne
14、xt I Print d End Sub 程序运行后,如果单击命令按钮,则在窗体上输出的内容为 _。 ( A) 89 ( B) 99 ( C) 23 ( D) 77 33 在窗体上画一个名称为 Command1的命令按钮,然后编写如下事件过程: Private Sub Command1_Click() For n=1 To 20 If n Mod 3 Then m=m+n3 Next n Print n End Sub 程序运行后,如果单击命令按钮,则窗体上显示的内容是 _。 ( A) 15 ( B) 18 ( C) 21 ( D) 24 34 以下有关数组定义的语句序列中,错误的是 _。 (
15、 A) Static arrl(3) arrl(1)=100 arrl(2)=“Hello“ arrl(3)123.45 ( B) Dim arr2()As Integer Dim size As Integer Private Sub Command2_click() size=InputBox(“输入 :“) ReDimarr2(size) End Sub ( C) Option Base1 Private Sub Command3_click() Dim arr3(3)As Integer End Sub ( D) Dim n As Integer Private Sub Command
16、4_Click() Dim arr4(n)As Integer End Sub 35 在窗体上画两个滚动条,名称分别为 Hscrolll、 Hscroll2;六个标签,名称分别为Label1、 Label2、 Label3、 Label4、 Label5、 Label6,其中标签 Label4-Label6分别显示 “A”、 “B”、 “A*B”等文字信息,标签 Label1、 Label2分别显示其右侧的滚动条的数值, Label3显示 A*B的计算结果。当 移动滚动框时,在相应的标签中显示滚动条的值。当单击命令按钮 “计算 ”时,对标签 Label1、 Label2中显示的两个值求积,并将
17、结果显示在 Label3中。以下不能实现上述功能的事件过程是 _。 ( A) Private Sub Command1_Click() Label3.Caption=Str(Val(Label1.Caption)*Val(Label2.Caption) End Sub ( B) Private Sub Command1_Click() Label3.Caption=HScrolll.Value*HScroll2.Value End Sub ( C) Private Sub Commandl_click() Label3.Caption=HScrolll*HScroll2 End Sub ( D
18、) Private Sub Command1_Click() Label3.Caption=HScrolll.Text*HScroll2.Text End Sub 36 设一棵完全二叉树共有 500个结点,则在该二叉树中有【 】个叶子结点。 37 在最坏情况下,冒泡排序的时间复杂度为【 】。 38 面向对象的程序设计方法中涉及的对象是系统中用来描述客观事物的一个【 】。 39 软件的需求分析阶段的工作,可以概括为四个方面:【 】、需求分析、编写需求规格说明书和需求评审。 40 5.【 】是数据库应用的核心。 41 为了把 个 Visual BASIC应用程序装入内存,只要装入【 】 文件即可。
19、 42 语句 print “25+32=“;25+32的输出结果是【 】 。 43 计时器事件之间的间隔通过【 】 属 性设置。 44 以下循环的执行次数是【 】 。 k=0 Do Until k =10 k=k+1 Loop 45 表达式 Fix(-32.68)+Int(-23.02)的值为【 】 。 46 在窗体上画 个命令按钮,然后编写如程序: (假定变量 x是一个窗体级变量 ) Dim x As Integer Sub inc(a As Integer) x=x+a End Sub Private Sub Command1_Click() inc 2 inc 3 inc 4 Print
20、 x; End Sub 程序执行后,单击 Command1命令按钮,输出的结果是【 】 。 47 全局变量必须在【 】 模块中定义。 48 以下程序段的输出结果是【 】。 num=0 Do While num =5 num=mum+1 Loop Print num VB笔试模拟试卷 57答案与解析 1 【正确答案】 D 【试题解析】 算法分析是指 对一个算法的运行时间和占用空间做定量的分析,一般计算出相应的数量级,常用时间复杂度和空间复杂度表示。分析算法的目的就是要降低算法的时间复杂度和空间复杂度,提高算法的执行效率。 2 【正确答案】 C 【试题解析】 在有向图中,若任意两个顶点都连通,则称
21、该图是强连通图,这样的有向图的形状是环状,因而至少应有 n条边。 3 【正确答案】 B 【试题解析】 当数据表 A中每个元素距其最终位置不远,说明数据表 A按关键字值基本有序,在待排序序列基本有序的情况下,采用插入排序所用时间最少,故答案为选项 B。 4 【正确答案】 A 【试题解析】 链式存储结构克服了顺序存储结构的缺点:它的结点空间可以动态申请和释放;它的数据元素的逻辑次序靠结点的指针来指示,不需要移动数据元素。故链式存储结构下的线性表便于插入和删除操作。 5 【正确答案】 D 【试题解析】 结构化分析的常用工具有数据流图、数据字典、判定树和判定表。而 PAD图是常见的过程设计工具中的图形
22、设计。 6 【正确答案】 A 【试题解析】 通常,将软件产品从提出、实现、使用维护到停止使用退役的过程称为软件生命周期。它可以分为软件 定义、软件开发及软件运行维护三个阶段。 7 【正确答案】 C 【试题解析】 软件的白盒测试方法是把测试对象看做一个打开的盒子,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。 8 【正确答案】 D 【试题解析】 在文件系统中,相互独立的记录其内部结构的最简单形式是等长同格式记录的集合,易造成存储空间大量浪费,不方便使用。而在数据库系统中,数据是结构化的,这种结构化要求在描述数据时不仅描述数据本身,还要描述数据间的
23、关系,这正是通过采用特定的数 据模型来实现的。 9 【正确答案】 B 【试题解析】 分布式数据库系统具有数据分布性、逻辑整体性、位置透明性和复制透明性的特点,其数据也是分布的:但分布式数据库系统中数据经常重复存储,数据也并非必须重复存储,主要视数据的分配模式而定。若分配模式是一对多,即一个片段分配到多个场地存放,则是冗余的数据库,否则是非冗余的数据库。 10 【正确答案】 C 【试题解析】 数据模型所描述的内容有 3个部分,它们是数据结构、数据操作和数据约束。其中,数据模型中的数据结构主要描述数据的类型、内容、性质,以及数据库的联系等;数据操作主要是描述在相应数据结构上的操作类型与操作方式。
24、11 【正确答案】 A 【试题解析】 Visual Basic中可以定义工程组,此时的工程资源管理器窗口中可以看到多个工程文件及属于这些工程的其他文件。 12 【正确答案】 C 【试题解析】 Visual Basic应用程序可以以解释方式执行,也可以编译成可执行文件执行。 13 【正确答案】 A 【试题解析】 用户可以利用 Type语句定义自己的数据类型,其格式如下: Type数据类型名 数据 类型元素名 As类型名 数据类型元素名 As类型名 . End Type 14 【正确答案】 B 【试题解析】 Visual Basic中 Dim只能声明变量,而不能声明一个常量。声明常量要用 Cons
25、t。 Static则是用来定义一个静态变量的。 15 【正确答案】 C 【试题解析】 Load事件是在窗体被装入工作区时触发的事件。当应用程序启动时,自动执行该事件,所以该事件通常用来在启动应用时对属性和变量进行初始化。而 MouseDown、 MouseUp是鼠标指针在某个对象上 按键时激发的, Click是鼠标单击时激发的。 16 【正确答案】 B 17 【正确答案】 B 【试题解析】 该打印语句是分为两步来执行的,先判断 a b,即 10 5,结果为True:再判断 True c,即 True 1,因为当把逻辑型值转化成数值型时, False转变成 0, True转变成 -1,即 -1
26、1,结果为 False。 18 【正确答案】 B 【试题解析】 DoEvents的作用是转让控制权,以便让操作系统处理其他的事件。在一些循环次数较多的循环体中使用 DoEvems可以避免程序 “不响 应 ”。 19 【正确答案】 D 【试题解析】 Visual Basic中, LOC函数是用来在已打开的文件中指定当前读写的位置, LOF函数是用来返回已打开文件的长度, EOF函数是用来判断是否到达已打开文件的尾部。 20 【正确答案】 A 【试题解析】 工程中首先执行的部分可以由编程人员自己设置,并不一定要先执行 Sub Main过程。 21 【正确答案】 A 【试题解析】 窗体的 Mouse
27、Down事件中, Button参数是用来判断当前按下的是哪个鼠标键 (1表示左键, 2表示右键, 4表示中间按键 ), Shift参数是用来判断Shift、 Alt和 Ctrl键有没有被按下 (1表示 Shift被按下, 2表示 Alt被按下, 4表示Ctrl被按下, 6表示 Ctrl和 Alt被同时按下等 ),参数 X, Y返回鼠标当前位置的坐标,而不是用来设置的。 22 【正确答案】 B 【试题解析】 在 ComboBox控件中, RemoveItem方法是用来删除控件中的项目的,其表达式为: object.RemoveItem index 其中, 0 index主 ComboBox.Li
28、stCount-1 23 【正确答案】 A 【试题解析】 TabStop属性是用来判断是否能够使用 Tab键来将焦点从一个对象移到另一个对象,它不能决定控件能否接收从键盘上输入的数据。 24 【正确答案】 D 【试题解析】 如果要在菜单的两个命令项之间添加一个分隔线,可在标题(Caption)文本框中输入一个连字符 “-”。 25 【正确答案】 C 【试题解析】 Visual Basic访问文件的方式分为三类:有Input/Output/Append(访问顺序输入 /输出文件 )、 Binary(访问二进制文件 )、Random(访问随机存取文件 )。如果未指定方式,则以 Random访问方式
29、打开文件。而以 Random形式打开的文件是既可以读,也可以写的。 26 【正确答案】 A 【试题解析】 Select Case执行时,首先计算 Select Case语句中的测试表达式的值,然后从第一个 Case开始找满足该值的 Case语句,遇到第一个表达式列表值与测试表达式相匹配的 Case语句,则执行其后的语句序列,然后跳出 Select Case结构。而本题第一个语句就满足条件,所以执行第一条语句,结果为 x=10。 27 【正确答案】 A 【试题解析】 Do.Loop While循环是先执行一次循环体,再判断条件是否为True,如为 True,则继续执行循环体,如为 False,则
30、结束。所以如果条件是一个为 0的常数,即条件为 False,则执行一次循环体后退出。 28 【正确答案】 B 【试题解析】 Do Until.Loop循环采用的是先判断循环条件后执行循环体的做法。而用 Until关键字表示当循环条件为 False时执行循环体,直到条件为 True时终止循环。 代码中, num是整型数据,循环体共被执行 3次。循环体第三次被执行后, num的值为 7,故循环终止。 29 【正确答案】 C 【试题解析】 Do.Loop While循环采用的是先执行循环体再判断条件的做法。所以代码先执行了一次循环体,使得 s=9, a=7,再判断条件 a =0为假,则终止循环。 3
31、0 【正确答案】 D 【试题解析】 因为程序一运行,文本框 Text1获得焦点,按下 A键后,执行Text1_KeyDown事件,在窗体上显示 “Visual Basic”;这时再单击窗体,则触发Form MouseUp事件,在窗体上显示 “程 序设计 ”。 31 【正确答案】 C 【试题解析】 本题考查循环语句,其过程如下: i=1时, x=0/1=0, n=0+1=1, sum=0+0; i=2时, x=1/2, n=1+1=2, sum-0+1/2 i=3时, x=2/3, n=2+1-3, sum=0+1/2+2/3: i=4时, x=3/4, n=3+1=4, sum=0+1/2+2
32、/3+3/4; i=5时, x=4/5, n=4+1=5, sum=0+1/2+2/3+3/4+4/5。 32 【正确答案】 C 【试题解析 】 本题的循环过程如下: i=1时, x(1)=10, d=-10, c=10; i=2时, x(2)=12, d=2, c=12; i=3时, x(3)=21, d=23, c=21; i=4时, x(4)-32, d=55, c=32; i=5时, x(5)=24, d=23, c=32; 33 【正确答案】 C 【试题解析】 本题考查的是 For.Next循环语句。 For.Next循环执行时,先将初始值赋给循环变量,判断是否超过终值,若未超过则执
33、行循环体,遇到 Next语句后,循环变量增 加一个步长 (默认值为 1),再判断是否超过终值,若未超过则继续执行循环体,如此重复直到循环变量超过终值,退出循环。本题中的循环变量为 n,步长为 1,当 n=20时,再执行 Next n,则 n=21,此时 n大于终值 20,退出循环。 34 【正确答案】 D 【试题解析】 在数组定义中,定义的数组元素个数不能是变量。而选项 D中的 n是一个变量。 35 【正确答案】 D 【试题解析】 HScroll控件缺省属性为 Value,即 HScrolll与 HScrolll.Value相等,而其属性中没有 Text属性。 36 【正确答案】 250 【试
34、题解析】 所谓完全二叉树是指除最后一层外,每一层上的结点数均达到最大值:在最后一层上只缺少右边的若干结点。具有 n个结点的完全二叉树,其父结点数为 int(n/2),而叶子结点数等于总结点数减去父结点数。本题 n=500,故父结点数等于 int(500/2)=250,叶子结点数等于 500-250=250。 37 【正确答案】 n(n-1)/2或 O(n(n-1)/2) 【试题解析】 冒泡排序法是一种最简单的交换类排序方法,它是通过相邻数据元素的交换逐步将线性表变成 有序。假设线性表的长度为 n,则在最坏的情况下,冒泡排序需要经过 n/2遍的从前往后的扫描和 n/2遍的从后往前的扫描,需要的比
35、较次数为 n(n-1)/2。 38 【正确答案】 实体 【试题解析】 面向对象的程序设计方法中涉及的对象是系统中用来描述客观事物的一个实体,是构成系统的一个基本单位,它由一组表示其静态特征的属性和它可执行的一组操作组成。 39 【正确答案】 需求获取 【试题解析】 软件的需求分析阶段的工作,可以概括为四个方面;需求获取、需求分析、编写需求规格说明书和需求评审。 40 【正确答案】 数据库设计 【试题解析】 数据库设计是数据库应用的核心。在数据库应用系统中的一个核心问题就是设计一个能满足用户要求,性能良好的数据库,这就是数据库设计。 41 【正确答案】 工程或 .vbp 【试题解析】 Visua
36、l Basic总是以 ASCII格式保存工程文件 (.vbp)。工程文件包含了反映工程的设置的项目 (包括工程中的窗体和模块、弓佣、以及为控制编译而选取的各种各样的选项,等等 )。当工程文件被装入内存的时候,所有相关的应用程序的信息也就都被装入了内存。 42 【正确答案 】 25+32=57 【试题解析】 语法: object.Printoutputlist Print方法的语法具有下列对象限定符和部分: 部分 描述 object 必要。对象表达式,其值为 “应用于 ”列表中的对象。 Outputlist 可选。表示要打印的表达式或表达式的列表。如果省略,则打印一空白行。 可以用空白或分号来分
37、隔多个表达式。本题分号后是 Print方法的第二个表达式。 43 【正确答案】 Interval 【试题解析】 Interval属性返回或设置对 Timer控件的计时事件各调用间的毫秒数。语法: object.Interval= milliseconds。 44 【正确答案】 10 【试题解析】 k从 0开始每次加 1,当 k条件为 10时,将不在进入循环,故整个循环执行了 10次。 45 【正确答案】 -56 【试题解析】 返回参数的整数部分,其类型和参数相同。 语法 Int(number) Fix(number) 必要的 number参数是 Double或任何有效的数值表达式。如果 num
38、ber包 含Null,则返回 Null。 说明 Int和 Fix都会删除 number的小数部份而返回剩下的整数。 Int和 Fix的不同之处在于,如果 number为负数,则 Int返回小于或等于number的第一个负整数,而 Fix则会返回大于或等于 number的第一个负整数。例如, Int将 -8.4转换成 -9,而 Fix将 -8.4转换成 -8。 46 【正确答案】 9 【试题解析】 inc函数每执行一次就向 x上累加一次传入的参数,所以最后 x的值为: 2+3+4=9。 47 【正确答案】 标准 或 .bas 或 全局 【试题解析】 标准模块也称全局模块。标准模块 (文件扩展名为 .BAS)是应用程序内其他模块访问的过程和声明的容器。它们可以包含变量、常数、类型、外部过程和全局过程的全局 (在整个应用程序范围内有效的 )声明或模块级声明。 48 【正确答案】 6 【试题解析】 只要指定的条件为 True,则会重复执行一系列的语句。本题中的循环只能当 num的值超过 5时才会终止,所以最终的 num的值为 6。