1、VB笔试模拟试卷 117及答案与解析 1 下列选项中,不是一个算法的基本特征的是 ( )。 ( A)完整性 ( B)可行性 ( C)有穷性 ( D)拥有足够的情报 2 下列数据结构中,属于非线性的是 ( )。 ( A)线性表 ( B)队列 ( C)树 ( D)栈 3 下列叙述中错误的是 ( )。 ( A)线性表是由 n个元素组成的一个有限序列 ( B)线性表是一种线性结构 ( C)线性表的所有结点有且仅有一个前件和后件 ( D)线性表可以是空表 4 按照 “先进先出 ”组织数据的数据结构 是 ( )。 ( A)队列 ( B)栈 ( C)双向链表 ( D)二叉树 5 下列关于线性链表的描述中正确
2、的是 ( )。 ( A)存储空间不一定连续,且各元素的存储顺序是任意的 ( B)存储空间不一定连续,且前件元素一定存储在后件元素的前面 ( C)存储空间必须连续,且各前件元素一定存储在后件元素的前面 ( D)存储空间必须连续,且各元素的存储顺序是任意的 6 某二叉树共有 60个叶子结点与 50个度为 1的结点,则该二叉树中的总结点数为( )。 ( A) 148 ( B) 169 ( C) 182 ( D) 198 7 下列数据结构中,能用二分法进行查找的是 ( )。 ( A)顺序存储的有序线性表 ( B)结性链表 ( C)二叉链表 ( D)有序线性链表 8 最简单的交换排序方法是 ( )。 (
3、 A)快速排序 ( B)选择排序 ( C)堆排序 ( D)冒泡排序 9 对于长度为 n的线性表,在最坏情况下,下列各种排序法所对应的比较次数中正确的是 ( )。 ( A)冒泡排序为 n/2 ( B)冒泡排序为 n ( C)快速排序为 n ( D)快速排序为 n(n-1)/2 10 结构化程序 设计的 3种基本结构是 ( )。 ( A)过程、子程序和分程序 ( B)顺序、选择和重复 ( C)递归、堆栈和队列 ( D)调用、返回和转移 11 下列 ( )标识符不能作为 Visual Basic的变量名。 ( A) ABCabe ( B) b1234 ( C) 28wed ( D) crud 12
4、用 Print方法在 Form1窗体中显示出 4个 #号的正确代码为 ( )。 ( A) Debug.Print “#“ ( B) Print # ( C) Form1_Print # ( D) Form1.Print “#“ 13 在文本框中输入字符时,通过 ( )事件过程可以得到字符的 ASCII码值。 ( A) Change ( B) GotFocus ( C) KeyPress ( D) LostFocus 14 文本框 TextBox中的内容若要设置为用户不能修改,应设置 ( )属性。 ( A) Locked ( B) MultiLine ( C) PasswordChar ( D)
5、 ScrollBar 15 只能用来显示文本信息的控件是 ( )。 ( A)文本框 ( B)标签 ( C)图片框 ( D)图像框 16 对象名 .Cls方法对 ( )控件有效。 ( A)窗体、图像框 ( B)窗体、图片框 ( C)屏幕、窗体 ( D)图像框、图片框 17 下列叙述不正确的是 ( )。 ( A)命令按钮的默认属性为 Caption ( B)标签的默认属性为 Caption ( C)复选框的默认属性为 Value ( D)滚动条的默认属性为 Value 18 如果文本框的 Locked属性设置为 True,则下列说法正确的是 ( )。 ( A)此时在属性窗口中不可以修改文本框的 T
6、ext属性值 ( B)运行时用户不可以在界面上修改文本框中的内容 ( C)在程序代码中不可以修改文本框的内容,如不可以使用语句Text1.Text=“aaa“ ( D)以上均不正确 19 如果 A为整数且 |A| =10,则打印 “OK”,否则打印 “Error”,表示这个条件的单行格式 If语句是 ( )。 ( A) If Int( )=A And Sqr( ) =10 Then Print “OK“ Else Print “Error“ ( B) If Fix(A)= A And Abs(A) =10 Then Print “OK“ Else Print “Error“ ( C) If I
7、ht( )=A And(A =10,A =-10)Then Print “OK“ Else Print “Error“ ( D) If Fix( )=A And A =10,And A =-10 Then Print “OK“ Else Print “Error“ 20 运行下列语句后,输出的结果是 ( )。 Option Base 1 Dim a i=1 a=Array(1,-2,9,0,-1,9) Do k=a(i) For m=10 To k Srep -2 n=k+m Next m Print n+m i=i+1 Loop While Abs(m+n) 27 ( A) 3 27-8 (
8、 B) 3-8 27 ( C) -8 27 3 ( D) -8 3 27 21 语句 Dim Arr(-3 To 5)As Integer定义的数组的元素个数是 ( )。 ( A) 6 ( B) 7 ( C) 8 ( D) 9 22 若要将复选框设置成图形模式,则应设置 ( )属性值为 “1-vbButtonGraphical”。 ( A) TabStop ( B) Style ( C) Picture ( D) Enabled 23 窗体上有一个命令按钮 Commalld1和一个列表框 List1。先选择列表框中的某一个项目,然后单击命令按钮,将该项目从列表框删除。程序如下: Private
9、 Sub Command1_Click() Dim In As Integer In=_ List.Removc Ind End Sub 则在程序的空白行的语句是 ( )。 ( A) List1.Index ( B) List1.ListIndex ( C) List1.Text ( D) List1.ListCount 24 删除组合框中指定的项目所使用的方法是 ( )。 ( A) Move ( B) Remove ( C) Clear ( D) RemoveItem 25 过程共有 3种,它们分别是 ( )。 ( A) Sub过程、函数过程和属性过程 ( B)事件过程、函 数过程和通用过程
10、 ( C) Sub过程、函数过程和通用过程 ( D)事件过程、子过程和函数过程 26 Sub过程与 Function过程最根本的区别是 ( )。 ( A) Sub过程可以使用 Call语句或直接使用过程名调用,而 Function过程不可以 ( B) Function过程可以有参数, Sub过程不能有参数 ( C)两种过程参数的传递方式不同 ( D) Sub过程的过程名不能有返回值,而 Function过程能通过过程名返回值 27 有如下的函数过程: Function Func2(a As Integer,b As Integer) As Integer Static m As Integer
11、,i As Integer m=0 i=2 a=i+m+1 b=i+a+b Func2=m End Function 在窗体上画一个命令按钮,然后编写如下事件过程: Private Sub Command1_Click() Dim p AS Integer,k As Integer,m As Integer k=4 m=1 p=Func2(k,m) Print k; m p=Func2(k,m) Print k; m End Sub 程序运行后,单击命令按钮,输出结果为 ( )。 ( A) 3 6 CR 3 6 ( B) 3 6 CR 3 11 ( C) 3 11 CR 3 6 ( D) 3
12、11 CR 3 11 28 阅读下列程序: Private Sub Command1_Click() Dim i As Integer, k As Integer k=2 For i=1 To 3 Print H(k); Next i End Sub Function H(j As Integer) Static b a=0 a=a+r b=b+1 H=a*b+j End Function 单击命令按钮,执行程序,输出结 果是 ( )。 ( A) 2 3 4 ( B) 3 4 5 ( C) 5 6 7 ( D) 3 5 6 29 使用 “打开 ”对话框的方法是 ( )。 ( A)双击工具箱中的
13、 “打开 ”对话框控件,将其添加到窗体上 ( B)单击 CommonDialog控件,然后在窗体上画出 CommonDialog控件,再将Action属性设为 1 ( C)在程序中用 Show方法显示 “打开 ”对话框 ( D)在程序中用 Showopen方法显示 “打开 ”对话框 30 下列操作不能向工程中添加窗体的是 ( )。 ( A)执行 “工程 ”菜单中的 “添加窗体 ”命令 ( B)单击工具栏中的 “添加窗体 ”按钮 ( C)右击窗体,在弹出的菜单中选择 “添加窗体 ”命令 ( D)右击工程资源管理器,在弹出的菜单中选择 “添加 ”命令,然后在下一级菜单中选择 “添加窗体 ”命令 3
14、1 按文件的访问方式不同,可以将文件分为 ( )。 ( A)顺序文件、随机文件 ( B)文本文件和数据文件 ( C)数据文件和可执行文件 ( D) ASCII文件和二进制文件 32 执行语句 Open “TC.dat“ For Random As #1 Len=50后,对文件 TC.dat中的数据能执行的操作是 ( )。 ( A)既可以读也可以写 ( B)可以进行读操作 ( C)可以进行写操作 ( D)这是错误的操作 33 执行语句 Open “C:SDat.dat“ For Input As #2后,系统 ( )。 ( A)将 C盘当前文件夹下名为 SDat.dat文件的内容读入内存 ( B
15、)在 C盘当前文件夹下建立名为 SDat.dat的顺序文件 ( C)将内存数据存放在 C盘当前文件夹下名为 SDat.dat的文件中 ( D)将某个磁盘文件的内容写入 C盘当前文件 夹下名为 SDat.dat的文件中 34 设有语句 Open “C:Test.Dat“ For OutPut As #1,则下列叙述错误的是 ( )。 ( A)该语句只能打开 C盘根目录下一个已存在的文件 Test.Dat ( B)当 C盘根目录下没有该文件时,该语句在 C盘根目录下建立名为 Test.Dat的文件 ( C)该语句建立文件的文件号为 1 ( D)执行该语句后,就可以通过 Print#语句向 Test
16、.Dat文件中写入信息 35 下列事件过程的功能是:建立一个名为 Data1的随机文件,存放角度值及这 些角度的正弦函数值和余弦函数值,角度为 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 Dim i AS Integer Dim Ksc As Ang Open _ Y=14159/180 For i=1 To 9
17、0 Ksc.K=i Ksc.Sinx=Sin(i*Y) Ksc.Cosx=Cos(i*Y) _ Next i Close #2 End Sub ( A) Data1.txt For Random As #1 Len=10 Put #1,i,Ksc ( B) Data1.txt For Random As #1 Len=10 Put #1,Y,Ksc ( C) Data1.txt For Random As #1 Put #1,i,Ksc ( D) Data1.txt For Random As #1 Put #1,Y,Ksc 36 在算法的 5个特性中,算法必须能在执行有限个步骤之后终止指的是
18、算法的_性。 37 Visual Basic提供的对数据文件的三种访问方式为随 机访问方式、 _ 和二进制访问方式。 38 DefSng a定义的变量 a是 _类型的变量。 39 有如下程序: DefStr X-Z X=“123“ Y=“456“ Z=X+Y Print Z End 运行后,输出结果是 _。 40 表达式 14/5*2的值是 _。 41 表达式 Len(Str(1.3)Mod 2的值为 _。 42 设 A=2, B=-2,则表达式 A/2+1 B+5 Or B*(-2)=6的值是 _。 43 滚动条的最小值属性是 _,最大值属性是 Max。 VB笔试模拟试卷 117答案与解析
19、1 【正确答案】 A 【试题解析】 作为一个算法,一般应该具有以下 4个特征: 可行性,即考虑到实际的条件能够达到一个满意的结果; 确定性,算法中的每一个步骤都必须是有明确定义的; 有穷性,一个算法必须在有限的时间内做完; 拥有足够的情报。 2 【正确答案】 C 【试题解析】 线性结构是指数 据元素只有一个直接前件元素和直接后件元素。线性表是线性结构,栈和队列是指对插入和删除操作有特殊要求的线性表,树是非线性结构。 3 【正确答案】 C 【试题解析】 线性表是一种线性结构,由 n(n0)个元素组成,所以线性表可以是空表。但是在线性表中,第一个结点没有前件,最后一个结点没有后件,其他结点有且只有
20、一个前件和后件,所以 C是错误的。 4 【正确答案】 A 【试题解析】 队列是一种特殊的线性表,只允许在表的一端插入元素,在表的另一端删除元素,插入元素的一端叫 “队尾 ”,删除元素的一端叫 “队头 ”,先插入的元素先被删除,是按 “先进先出 ”的原则组织数据的。 5 【正确答案】 A 【试题解析】 线性表的链式存储结构中的结点空间是动态生成的,它们在内存中的地址可能是连续的,也可能是不连续的。 6 【正确答案】 B 【试题解析】 叶子结点总是比度为 2的结点多一个。所以,具有 60个叶子结点的二叉树有 59个度为 2的结点。总结点数 =60个叶子结点 +59个度为 2的结点 +50个度为 1
21、的结点 =169个结点。 7 【正确答案】 A 【试题解析】 二分法查找只适用于顺序存储的有序线性表, 对于顺序存储的非有序线性表和线性链表,都只能采用顺序查找。 8 【正确答案】 D 【试题解析】 所谓的交换类排序方法是指借助数据元素之间的互相交换进行排序的一种方法,包括冒泡排序和快速排序,冒泡排序是一种最简单的交换排序方法,它通过相邻元素的交换,逐步将线性表变成有序。 9 【正确答案】 D 【试题解析】 在最坏情况下,冒泡排序和快速排序的比较次数都是 n (n-1)/2。所谓冒泡排序,就是将相邻的两个数据比较,如前面的数据大于后面的,则位置互换。这样不停地比较、互换,其实就是把大的数往后
22、排,小的数往前排 (就像冒泡一样冒出来了 )。 10 【正确答案】 B 【试题解析】 程序的 3种基本控制结构包括顺序、选择和重复 (循环 ),这 3种结构就足以表达出各种其他形式的结构。 11 【正确答案】 C 【试题解析】 给变量命名时应遵循 4个原则: 名字只能由字母、数字和下划线组成; 第一个字符必须是英文字母,最后一个字符可以是类型说明符; 名字的有效字符为 255个; 不能使用 Visual Basic中的保留字作为变量名。 12 【正确答案】 D 【试题解析】 分析题目可知有两个要 求:一是输出 4个 #号;二是在 Form1窗体中。选项 A实现的是在立即窗口中输出 4个 #号;
23、选项 B实现的是在默认的对象中输出 4个 #号;选项 C语法不对;只有选项 D是完全正确的。 13 【正确答案】 C 【试题解析】 当文本框获得焦点,按下键盘上的某个键时,将触发文本框的KeyPress事件。 KeyPress事件带有一个 KeyCode参数,可以通过该参数获取按键的 ASCII码值。 14 【正确答案】 A 【试题解析】 Locked属性用来指定文本框是否可以被编辑。当设置为 False时,可以编辑文 本框中的文本;当设置为 True时,可以滚动和选择控件中的文本,但在运行时不能编辑。 15 【正确答案】 B 【试题解析】 在标签中只能显示文本,不能进行编辑;而在文本框中既可
24、显示文本,也可以编辑文本;图片框和图像框是用来显示图形的基本控件。 16 【正确答案】 B 【试题解析】 Cls方法清除运行时 Form或 PietureBox打印时所生成的图形和文本。 17 【正确答案】 A 【试题解析】 命令按钮的默认属性是 Value,该属性为 True时,表示已选择该按钮,为 False(默 认值 )表示没有选择该按钮。如果在代码中设置 Value属性值为True则会激活该按钮的 Click事件。 控件的默认属性是指不需要写属性名,只写控件名 Visual Basic就能识别的那个属性。如写 Label1=“VB考试 “就是为 Labcl1的默认属性 Caption属
25、性赋值。 18 【正确答案】 B 【试题解析】 该属性主要用来指定在程序运行时文本框是否可以被编辑。当设置为 False时,可以编辑文本框中的文本,当设置为 True时,可以滚动和选择控件中的文本,但不能编辑。当然,在设计阶段,在属性窗口中或 者在程序代码中可以修改控件的文本。 19 【正确答案】 B 【试题解析】 解答本题考生需了解题中用到的 3个函数的作用, Int和 Fix都会删除参数的小数部分而返回剩下的整数, Abs函数返回参数的绝对值,其类型和参数相同。而 Int和 Fix的不同之处在于,如果参数为负数,则 Int返回小于或等于参数的第一个负整数,而 Fix则会返回大于或等于参数的
26、第一个负整数。 20 【正确答案】 B 【试题解析】 本程序中,外层循环是 DoLoop While 循环,内层循环是 for循环程序执行如下: 当 i=1, k=a(i)=1, for循环执行 5次, n=3, m=0; Ptint n+m 输出 3; i=i+1=2。 当 i=2, k=a(i)=-2, for循环执行 7次, n=-4, m=-4;Print n+m 输出 -8; i=i+1=3 当 i=3, k=a(i)=9, for循环执行 1次, n=19,m=; Print n+m 输出 27; i=i+1=4;此时条件成立,退出 Do循环。 21 【正确答案】 D 【试题解析】
27、 该数组定义语句定义了一个一维数组,它的下标下界为 -3,上界为5,因此该数组的下标值在 -3 5之间, 数组元素为 Arr(-3)、 Arr(-2)、 Arr(-1),Arr(0)、 Arr(1), Arr(2), Arr(3), Arr(4)、 Arr(5),共 9个元素。 22 【正确答案】 B 【试题解析】 Style属性的值可设置成标准模式 0-vbButtonStandard,或图形模式 1-vbButtonGraphical。默认的 Style属性值为 0,显示为在其右边有一个标签的复选框,不能设置图形;设置为 1时,显示类似命令按钮,能上下切换。 Style属性值在运行时只读。
28、 23 【正确答案】 B 【试题解析】 Index属性返回或设置惟一的标识控件数组中一个控件的编号;ListIndex属性返回或设置控件中当前选择项目的索引; ListCount属性返回列表控件中项目的个数; Text属性返回列表框中选择的项目,是 string类型,这里需要一个数值类型,所以使用 ListIndex。 24 【正确答案】 D 【试题解析】 RemoveItem方法用于从控件中删除一项。其语法为: Object.RemoveItem Index,参数 Index为必选项,是整数型数值,表示要删除的列表项在对象中 的位置。 25 【正确答案】 D 【试题解析】 解答本是的关键是要
29、了解过程的分类, Visual Basic应用程序是由过程组成的。 Visual Basic应用程序的主体是事件过程,是当发生某个事件时,对该事件作出响应的程序段;有时候,多个不同的事件过程可能需要使用一段相同的程序代码,把这一段代码独立出来,作为一个过程,这样的过程叫做 “通用过程 ”,通用过程又分为两类,即子过程 (Sub过程 )和函数过程 (Function过程 )。 26 【正确答案】 D 【试题解析】 Function过程与 Sub过程的相似之处是;都可以获取参数,执行一系列语句,以及改变其参数值的独立过程;不同之处的是: Function函数有返回值,可以在表达式的右边使用,使用方
30、式与内部函数一样,而 Sub过程没有返回值。 27 【正确答案】 B 【试题解析】 本题意在考查调用 Func2时,参数是按地址传递的,所以两次调用 Func2时,实参 k、 m的值都改变了。程序运过程如下: 第一次调用Func2(k, m), k被行参 a改变为 3, m被行参改变为 6;第二次调用函数后, a为3, m为 11。 28 【正确答案】 B 【 试题解析】 函数 H中定义了一个静态变量 b,被 Static修饰的变量,其生命周期为程序的整个执行过程,所以它能够累计记录 3次调用函数 H的变化。第 1次调用 H函数后, b值为 1,函数的返回值 3;第 2次 b值为 2,函数的返
31、回值 4;第 3次 b值为 3,函数的返回值 5。 29 【正确答案】 B 【试题解析】 使用 “打开 ”对话框时,需要在宙体上画一个通用对话框控件,然后再使用 Showopen方法打开 “打开 ”对话框或者设置通用对话框的 Action属性为1。 30 【正确答案】 C 【试题解析】 添加窗体的方法 有以下 3种: 通过 “工程 ”菜单中的 “添加窗体 ”命令柬添加窗体; 通过工具栏中的 “添加窗体 ”按钮来添加窗体: 在工程资源管理器中,右击,在弹出的浮动菜单中选择 “添加窗体 ”命令来添加窗体。但右击窗体,在弹出的浮动菜单中没有添加窗体的命令。 31 【正确答案】 A 【试题解析】 根据
32、不同的分类标准,文件可分为不同的类型。根据数据性质,文件可分为程序文件和数据文件;根据数据的存取方式和结构,文件可分为顺序文件和随机文件;根据数据的编码方式,文件可分为 ASCII文件和二进制文件。 32 【正确答案】 A 【试题解析】 Random方式是以读写方式打开一个随机文件。打开随机文件后,对该文件既可进行写操作也可进行读操作。 33 【正确答案】 A 【试题解析】 Open是打开或建立一个文件,对于一个已经存在的文件“C:SDat.dat”,题中以 Input方式打开文件,为读文件做好准备,即将文件读入到缓存区中,以供读操作。 34 【正确答案】 A 【试题解析】 Open过程语法为
33、: Open pathname For Input Output Append As filenumber Len=buffersize 当打开顺序文件作为 Input时,该文件必须存在,否则会产生程序错误。当打开一个存在的文件作为 output或 Append时,直接打开该文件;当打开一个不存在的文件作为 Output或 Append时, Open语句首先创建该文件,然后再打开。本题 Open语句打开一个文件作为 Output,是可以打开一个已存在的文件 Text.Dat的所以选项 A错误。 35 【正确答案】 A 【试题解析】 分析程序,程序要将角度值及这些角度的正弦函数值和余弦函数值存入
34、 Data1文件中 。因此,应先打开 Data1文件,应为 Data1文件是随机文件,要新建并写入信息,所以应用 Random方式打开文件。这里我们给随机文件指定长度为 10,所以第 1个空白处应填: “Data1.txt“ For Random As #1 Len=10。要向随机文件中写入信息,应用 Put语句,因此第 2空应填; Put #1, i, Ksc。 36 【正确答案】 有穷 【试题解析】 算法必须能在执行有限个步骤之后终止指的是算法的有穷性。同时有穷性还指算法的每个步骤都应该在有穷时间内结束。 37 【正确答案 】 顺序访问方式或顺序访问 【试题解析】 Visual Basic
35、提供对数据访问三种方式:随机方式 (Random)、顺序访问方式和二进制访问方式,不同的访问方式对应着不同的语句。 38 【正确答案】 单精度 【试题解析】 用 DefSng语句可以定义变量,一般格式: DefSng数值范围,常用的语句及其定义的数据类型如下:39 【正确答案】 123456 【试题解析】 由于 “+”前后两个变量都为字符串变量,因此,此时 “+”作为连接符将 X和 Y两个字符串连接起来,所以 2的值为 “123456”。 40 【正确答案】 5.6 【试题解析】 “/”和 “*”优先级相同,当运算符优先级相同时,表达式遵循从左向右计算的原则,表达式 14/5*2运算的过程为:
36、 14/5*22.8*25.6 。 41 【正确答案】 0 【试题解析】 解本题之窍门有两点; 运算的先后顺序,这里应该是 Str函数Lea 函数 Mod( 取模 )计算; Str函数和 Len函数的功能,前者是将数字转为字符串,注意转换后数字前头会保留一空位表示正负。表达式 Len(Str(1.3)Mod 2中 1.3转换后为 “_1.3”(“_”表示空格 )。 Len函数用来计算字符串的长度, “1.3”长度为 4(空格、小数点各算一个长度 )。 42 【正确答案】 False 【试题解析】 表达式的运算顺序是:先进行算术运算,然后进行比较运算,最后进行逻辑运算。表达式 A/2+1 B+5 Or B*(-2)=6的运算过程为: A/2+1 B+5 Or B*(-2)=61.0+1 3 Or 4=6False or FalseFalse 。 43 【正确答案】 Min 【试题解析】 在一般情况下,垂直滚动条的值由上而下递增,最上端代 表最小值用 Min属性表示;最下端代表最大值用 Max属性表示。水平滚动条的值从左向右递增,最左端代表最小值也是用 Min属性表示;最右端代表最大值也是用 Max属性表示。滚动条的值均以整数表示,其取值范围为 -32768 32767。