1、VB笔试模拟试卷 76及答案与解析 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) Name ( B) Caption ( C) BackColor ( D) BorderStyle 12 在窗体上画一个名称为 Command1的命令按钮,然后编写如下
4、事件过程: Private Sub Command1_Click() Staticy As Integer Cls For i=0 To 2 x=x+y y=y+3 Next Printx,y End Sub 程序运行后,连续二次单击Command1按钮后,窗体上显示的是 _。 ( A) 9 9 ( B) 36 18 ( C) 30 12 ( D) 63 27 13 在窗体上画一个命令按钮,然后编写如下事件过程: Private Sub Command1_Click() x=0 Do Until x=-1 a=InputBox(“请输入 A的值 ”) a=Val(A)b=InputBox(“请
5、输入 B的值 ”) b=Val(B)x=InputBox(“请输入 x的值 ”) x=Val(x) a=a+b+x Loop Print a End Sub 程序运行后,单击命令按钮,依次在输入对话框中输入 5、 4、 3、 2、 1、 -1,则输出结果为 _。 ( A) 2 ( B) 3 ( C) 14 ( D) 15 14 为了把一个记录型变量的内容写入文件中指定的位置,所使用的语句的格式为 _。 ( A) Get文件号,记录号,变量名 ( B) Get文件号,变量名,记录号 ( C) Put文件号,变量名,记录号 ( D) Put文件号,记录号,变量名 15 当我们输入代码时, Visu
6、al Basic可以自动检测 _ 错误。 ( A)语法错误 ( B)编译错误 ( C)运行错误 ( D)逻辑错误 16 下列四个关于 DoEvents语句的叙述中,正确的是 _。 ( A) DoEvents语句是一条非执行语句 ( B)即使使用 DoEvents语句,也不能改变语句执行的顺序 ( C) DoEvents语句提供了在某个循环中将控制权交给操作系统的功能,可以改变和控制语句的执行顺序 ( D) DoEvents语句没有返回值 17 在窗体上画一个文本框,然后编写如下事件过程: Private Sub Text1_KeyPress(KeyAscii As Integer) Dim c
7、har As String char=Chr(KeyAscii) KeyAscii=Asc(UCase(char) Text1.Text=String(6, KeyAscii) End Sub 程序运行后,如果在键盘上输入字母 “a”,则文本框中显示的内容为 _。 ( A) a ( B) A ( C) aaaaaaa ( D) AAAAAAA 18 编写如下事件过程: Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) If(Buuon And 3)=3 Then Print “AAAA“ End If End Sub
8、程序运行后,为了在窗体上输出 “AAAA”,应按下的鼠标键为 _。 ( A)左 ( B)右 ( C)同时按下左、右 ( D)按什么键都不显示 19 在窗体上画一个通用对话框,其名称为 CommonDialog1,然后画一个命令按钮,并编写如下事件过程: Private Sub Command1_Click() Common Dialog1.Flags=cdlOFNHideReadOnly CommonDialog1.Filter=“All Files(*.*)|*.*|Text Files“ x End Sub 47 下列程序的功能是:当 x 50时, y =0.8 xx;当 50x100时,
9、 y=0.7 xx;当 x100时 , Private Sub Command1_Click() Dim x As Single x = InputBox(“请输入 x的值 “ ) Select Case x Case Is 50 y=0.8 * x Case 50 To 100 y=0.7 * x 【 】 Print “输入数据出界 !“ End Select Print x, y End Sub 48 下列程序的功能是:将数据 1,2,8写入顺序文件 Num. txt中请补充完整。 Private Sub Form_Click ( ) Dim i As Integer Open “Num.
10、 txt“ For Output As #1 For i = 1 To 8 【 】 Next Close #1 End Sub 49 有如下事件过程: Private Sub Form Active ( ) Dim Score (1 to 3) As Integer Dim i As Integer Dim t As Variant Fori=3 To 1 step-1 Score (i) = 2 * i Next For Each t In Score Print t Next End Sub 程序运行后窗体上显示的值为【 】。 50 下列事件过程的功能是:建立一个名为 Datal的随机文件
11、,存放角度值及这些角度的正弦函数值和余弦函数值,角度为 1,2,3,. ,90。请在空白处填入适当的内容,将程序补充完整。 Private Type Ang K As Integer Sinx As Single Cosx As Single End Type Dim Ksc As Ang Private Sub Form_Click( ) Dim Y As Single Open【 】 Y=14159 / 180 For i=1 To 90 Ksc. K=i Ksc. Sinx = Sin ( i * Y) Ksc. Cosx = Cos ( i * Y) Put #2, i, Ksc Ne
12、xt i Close #2 End Sub 51 下列程序计算 Sn的值。 Sn=a+aa+aaa+a ,其中最后一项为 n个。 例如: a=5, n=4时,则 Sn=5+55+555+5555。 请在空白处填入适当的内容,将程序补充完整。 Private Sub Command1_Click( ) Dim a As Integer, n As Integer, Cout As Integer Dim Sn As Long, Tn As Long Cout = 1 Sn =0 Tn =0 a = InputBox(“请输入 a的值 :“ ) 【 】 Do Tn =Tn * 10 + a Sn
13、= Sn + Tn Cout = Cout + 1 【 】 Debug. Print a, n, Sn End Sub VB笔试模拟试卷 76答案与解析 1 【正确答案】 D 【试题解析】 算法分析是指对一个算法的运行时间和占用空间做定量的分析,一般计算 出相应的数量级,常用时间复杂度和空间复杂度表示。分析算法的目的就是要降低算法的时间复杂度和空间复杂度,提高算法的执行效率。 2 【正确答案】 C 【试题解析】 在有向图中,若任意两个顶点都连通,则称该图是强连通图,这样的有向图的形状是环状,因而至少应有 n条边。 3 【正确答案】 B 【试题解析】 当数据表 A中每个元素距其最终位置不远,说明
14、数据表 A按关键字值基本有序,在待排序序列基本有序的情况下,采用插入排序所用时间最少,故答案为选项 B。 4 【正确答案】 A 【试题解析】 链式 存储结构克服了顺序存储结构的缺点:它的结点空间可以动态申请和释放;它的数据元素的逻辑次序靠结点的指针来指示,不需要移动数据元素。故链式存储结构下的线性表便于插入和删除操作。 5 【正确答案】 D 【试题解析】 结构化分析的常用工具有数据流图、数据字典、判定树和判定表。而 PAD图是常见的过程设计工具中的图形设计。 6 【正确答案】 A 【试题解析】 通常,将软件产品从提出、实现、使用维护到停止使用退役的过程称为软件生命周期。它可以分为软件定义、软件
15、开发及软件运行维护三个阶段。 7 【正 确答案】 C 【试题解析】 软件的白盒测试方法是把测试对象看做一个打开的盒子,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。 8 【正确答案】 D 【试题解析】 在文件系统中,相互独立的记录其内部结构的最简单形式是等长同格式记录的集合,易造成存储空间大量浪费,不方便使用。而在数据库系统中,数据是结构化的,这种结构化要求在描述数据时不仅描述数据本身,还要描述数据间的关系,这正是通过采用特定的数据模型来实现的。 9 【正确答案】 B 【 试题解析】 分布式数据库系统具有数据分布性、逻辑整体性、位置透明性和复制
16、透明性的特点,其数据也是分布的;但分布式数据库系统中数据经常重复存储,数据也并非必须重复存储,主要视数据的分配模式而定。若分配模式是一对多,即一个片段分配到多个场地存放,则是冗余的数据库,否则是非冗余的数据库。 10 【正确答案】 C 【试题解析】 数据模型所描述的内容有 3个部分,它们是数据结构、数据操作和数据约束。其中,数据模型中的数据结构主要描述数据的类型、内容、性质,以及数据库的联系等;数据操作主要是描述在相应数据结构上 的操作类型与操作方式。 11 【正确答案】 B 【试题解析】 窗体的 Caption属性决定了窗体对象在显示时的标题。 12 【正确答案】 B 【试题解析】 本题考的
17、是 Static语句。 Static语句:在过程级别中使用,用于声明变量并分配存储空间。在整个代码运行期间都能保留使用 Static语句声明的变量的值。 本题中 y是以 Static声明的,它的值在离开 Command1_Click事件后是不会丢失的,而 x是一个局部变量,它只在过程中有用,离开了过程就不起作用了。点了一次以后, y=9, 点了二次以后,当 i=0时, x=x+y=0+9=9, y=y+3=9+3=12当 i=1时, x=9+12=21, y=12+3=15;当 i=2时, x=21/15=36,7=15+3=18。 13 【正确答案】 A 【试题解析】 本题需要注意的是每次循
18、环开始的时候三个变量都被重新赋了一次值,所以最后的结果仅仅是 2+1+(-1)。所以最终的输出是 2。 14 【正确答案】 D 【试题解析】 Put语句的格式为: Put#filcnumber,recnumber,varname 其中 filenumber表示有效的文件号。 recnumber表示记录号或字节数,即开始写入的地方。 Varname表示变量名。 15 【正确答案】 A 【试题解析】 Visual Basic编辑环境可以自动识别用户的输入是否符合语法规则。 16 【正确答案】 C 【试题解析】 Do Events语句是用于事件驱动模式下的一条特殊的语句,它提供了在某个循环中将控制权
19、交给操作系统的功能,可以改变和控制语句的执行顺序,而且它具有返回值。 17 【正确答案】 D 【试题解析】 该事件过 程中首先用 Chr函数记录下输入的字符,然后用 UCase函数将其转化为大写,再用 Asc函数记录下其码值。最后使用 String函数将其重复 6遍并输出到文本框中。当文本框中的文本内容发生变化的时候,会触发文本框的 Change事件,而 KeyPress事件是在 Change事件之前触发的,在发生KeyPress事件之前,尚未触发 Change事件。在 KeyPress事件中,改变了文本框的 Text属性,所以会触发 Change事件,之后,键盘输入的信息 “a”才在变为大写
20、之后输入文本框,文本框中最终显示的是 7个 “A”。 18 【正确答案】 D 【试题解析】 从题目中的程序可以看出, (Button And 3)=3这个条件是永假的,所以输出语句也永远不会被执行。 19 【正确答案】 B 【试题解析】 从程序可见 FilterIndex肩性已经设为 2,所以缺省过滤器为 *.txt。 20 【正确答案】 B 【试题解析】 Hide方法用来将窗体从屏幕上删除,但该窗体仍然留在内存中。 21 【正确答案】 C 【试题解析】 Write语句和 Print语句的基本功能相同,其主要区别有以下两点; 用 Write语句向文件写数据时,数据在磁盘上以紧凑格式存放,能自动
21、在数据项之间插入逗号,并给字符串加上双引号。一旦最后一项被写入,就插入新的一行。 用 Write语句写入的正数的前面没有表示符号位的空格。 22 【正确答案】 B 【试题解析】 Visual Basic访问文件的方式分为三类:有Input/Output/Append(访问顺序文件 )、 Binary(访问二进制文件 )、 Random(访问随机文件 )。如果未指定方式,则以 Random访问方式打开文件。 23 【正确答案】 A 【试题解析】 Integer数据类型 Integer变量存储为 16位 (2个字节 )的数值形式,其范围为 -32,768-32,767之间。 Integer的类型声
22、明字符是百分比符号 (%)。 24 【正确答案】 C 【试题解析】 定义数组的语法: DimWithEventsvarname(subscripts) AsNewtype),WithEventsvarname(subscripts)As New type subscripts表示数组变量的 维数;最多可以定义 60维的多维数组。 subscripts参数使用下面的语法: lower Toupper, lower To upper 题目中所给数组为 3维的。 25 【正确答案】 D 【试题解析】 Password Char属性:返回或设置一个值,该值指示所键入的字符或占位符在 TextBox控件
23、中是否要显示出来;返回或设置用作占位符。 为了在对话框中创建一个密码域应使用此属性。虽然能够使用任何字符,但是大多数基于Windows的应用程序使用星号 (*)。 注意 :如果 MultiLine属性被设为 True,那么设置 PasswordChar属性将不起效果。 26 【正确答案】 A 【试题解析】 Microsoft Visual Basic6.0包括三种版本,分别是:学习版、专业版、企业版。 27 【正确答案】 A 【试题解析】 窗体设计器窗口简称窗体 (Form),是应用程序最终面向用户的窗口,它对应于应用程序的运行结果。 28 【正确答案】 B 【试题解析】 VB中窗体文件的扩展
24、名为 FRM,即 Form。 29 【正确答案】 C 【试题解析】 在程序中每个控件都有个名字,控件的名字也是它们互相区别的惟一标志。 30 【正确答案】 C 【试题解析】 清除窗体的方法可以用 Unload将其从内存中彻底卸载,也可以设置其 Visible属性为 False,仅仅使其从屏幕上消失;还可以用 Hide属性,使窗体隐藏起来。 31 【正确答案】 D 【试题解析】 MsgBox函数的按钮组合中最多只能有三个按钮。 32 【正确答案】 C 【试题解析】 exit sub用来跳出本过程。 exit function用来跳出 本函数并返回到调用处继续执行。 exit do用来退出 do循
25、环。 没有 exit while这个用法。 33 【正确答案】 A 【试题解析】 日期型数据用来表示日期信息,其格式为 mm/dd/yyyy或 mm-dd-yyyy,取值范围为 1/1/100到 12/31/9999;日期文字须以符号 “#”括起来,例如,#January1, 2002#; Format函数设置日期的格式应当为: Format(MyDate,“dd, mm, yy“)。 34 【正确答案】 D 【试题解析】 当用户向文本 框中输入新信息,或当程序把 Text属性设置为新值从而改变文本框的 Text属性时,将触发 Change事件。程序运行后,在文本框中每键入一个字符,就会引发一
26、次 Change事件。 35 【正确答案】 C 【试题解析】 模块变量包括窗体变量和标准模块变量,窗体变量可以作用于该窗体的所有过程。全局变量只能在标准模块中声明,不能在过程或窗体模块中声明。 2. 在过程 (事件过程或通用过程 )内定义的变量叫做局部变量,其作用域是它所在的过程。某一过程的执行只对该过程内的变量产生作用,对其他过程中相同名字的局部 变量没有任何影响。因此,在不同的过程中可以定义相同名字的变量,它们之间没有任何关系。如果需要,则可以通过 “过程名变量名 ”的形式分别引用不同过程中相同名字的变量。 3在过程中的局部变量,如果过程定义使用了 Static,则过程中的局部变量就是 S
27、tatic型的,即在每次调用过程时,局部变量的值保持不变;如果省略 Static,则局部变量就默认为 “自动 ”的,即在每次调用过程时,局部变量被初始化为。或空字符串。 36 【正确答案】 边界值分析法 【试题解析】 黑箱测试方法完全不考虑程序的内部结构和内 部特征,而只是根据程序功能导出测试用例。常用的黑箱测试有等价类划分、边界值分析法和错误推测法 3种。 37 【正确答案】 调试 【试题解析】 软件测试的目标是在精心控制的环境下执行程序,以发现程序中的错误,给出程序可靠性的鉴定;调试也称排错,它是一个与测试有联系又有区别的概念。具体来说,测试的目的是暴露错误,评价程序的可靠性,而调试的目的
28、是发现错误的位置,并改正错误。 38 【正确答案】 完善性 【试题解析】 软件维护活动包括以下几类:改正性维护、适应性维护、完善性维护和预防性维护。改正性 维护是指在软件交付使用后,为了识别和纠正软件错误、改正软件性能上的缺陷、排除实施中的误使用,应当进行的诊断和改正错误的过程;适应性维护是指为了使软件适应变化,而去修改软件的过程;完善性维护是指为了满足用户对软件提出的新功能与性能要求,需要修改或再开发软件,以扩充软件功能、增强软件性能、改进加工效率、提高软件的可维护性;预防性维护是为了提高软件的可维护性、可靠性等,为以后的进一步改进软件打下良好基础。 39 【正确答案】 消息 【试题解析】
29、在面向对象技术中,主要用到对象 (object)、类 (class)、方法(method)、消息 (message)、继承 (inherit ance)、封装 (encapsulation)等基本概念。其中消息是用来请求对象执行某一处理或回答某些信息的要求。 40 【正确答案】 blank 【试题解析】 ASC表示升序排列, DESC表示降序排列,多用在索引定义和SELECT语句中的 ORDER子句中。 41 【正确答案】 text(*.txt)|*.txt 【试题解析】 使用通用对话框指定打开文件类型的格式为:文件类型名 (*.扩展名 )|*.扩展名。 42 【正确答案】 ASCII 【试题
30、解析】 执行 KeyPress事件过程时, KeyAscii是所按键的 ASCII码。 43 【正确答案】 10 【试题解析】 Fun函数的参数 x为传值调用。在函数中,对 x值的改变不能够返回给 n,因此最后 n的值仍然为 10,没有改变。 44 【正确答案】 Base.txt For Output 【试题解析】 本题中以输出方式来打开文件,故要用 “Open“ Base. txt“ For Output As #1“语句;向文件中写入数据用 Print语句。 45 【正确答案】 100 【试题解析】 在程序 Sub中定义了一个含 4个元素的数组,并且分别给它们赋值,数组上界是 4,下界为
31、1;将数组 m作为实参调用 Fmax事件过程,并将数组m的地址传递给数组 a,即此时数组。与 m用一个存储空间;将数组的上界和下界分别赋给变量 Last和 First,在赋值表达式中分别调用了 LBound()函数求数组下界,及 UBound()函数求数组的上界;在循环语句中,变量的初始值为数组的下界为 1,终值为数组的上界为 4,循环体是一个条件语句,如果 a(i)中的值大于Max,那么就将 a(i)的值赋给 Max,当循环结束后,将 Max作为函数的返回值,所以此事件过程的功能即为求数组中的最大值。 46 【正确答案】 b$=“i“ 【试题解析】 该语句的作用是判断每个字母是否为 i,如果
32、是则计数,否则不计数。 47 【正确答案】 Case Else 【试题解析】 阅读程序后,在 Select Case结构中,只有两个 Case子句,分别表示 x取值的两种情况,但题目中将 x的值分为 3种情况,空白处应该填写 Case Else语句。 48 【正确答案】 Print #1, i 【试题解析】 使用 Print语句可以将数据写入顺序文件中。 49 【正确答案】 24 6 【试题解析】 本题考查了数组的定义和 For EachNext 语句。题中定义了下标下界为 1下标上界为 3的 Score数组,通过 For循环语句赋值后,再通过 For Each Next 语句在窗体上输出数组
33、中的每个成员。 50 【正确答案】 “C:Datal.txt”For Random As #2 Len=10 【试题解析】 打开一个随机文件的一般格式为: Open“文件名称 ”For Random As# 件号 Len=记录长度 51 【正确答案】 答案: n=InputBox(“请输入 n的值 !”) , Loop While Cout =n或Loop Until Cout = n + 1 【试题解析】 a和 n的值必须已知,表达式才能计算。但程序中没有给变量 n赋值的语句,可见第一个空白行应该填写给 n赋值的语句。 Do循环应该有与之对应的终端语句,可见了第二个空白行应填写 Do循环的终端语句,即 While语句,同时要构造出控制循环的条件。程序中有四个赋值语句,其中有一个计数语句Cout=Coat+1,可见控制循环次数的变量应是 Cout。