1、VB 笔试模拟试卷 212及答案与解析 1 一个工程中含有窗体 Form1、 Form2和标准模块 Modell,如果在 Form1中有语句 PublicX As Integer,在 Modell中有语句 Public Y As Integer。则以下叙述中正确的是 ( A)变量 X、 Y的作用域相同 ( B) Y的作用域是 Modell ( C)在 Form1中可以直接使用 x ( D)在 Form2中可以直接使用 X和 Y 2 有如下事件过程: Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) If(Button
2、And 3)=3 Then Print“OK“ End If End Sub 程序运行后,为了在窗体上输出 “OK“,应当按下的鼠标键是 ( A)左键 ( B)右键 ( C)同时按下左键和右键 ( D)按什么都不显示 3 新建一个窗体,其 BorderStyle属性设置为 Fixed Single,但运行时却没有最大化和最小化按钮,可能的原因是 ( A) BorderStyle的值设为 Fixed Single,此项设置值的作用即禁止最大化和最小化按钮 ( B)窗体的 MaxButton和 MinButton值设为 False ( C)正常情况下新建的窗体都没有最大化和最小化按钮 ( D)该窗
3、体可用鼠标拖动边框的方法改变窗体的大小 4 设有数组定义语句: Dim a(5) As Integer, List1为列表框控件。下列给数组元素赋值的语句错误的是 ( A) a(3)=3 ( B) a(3)=InputBox(“input data“) ( C) a(3)=List1.ListIndex ( D) a=Array(1,2,3,4,5,6) 5 在窗体上画一个命令按钮,名称为 Commandl。然后编写如下程序: Private Sub Command1_Ctick() For I=1 TO 2 For J=1 TO I Print String(I,“Hello“); Next
4、 J Print Next I End Sub 程序运行后,如果单击命令按钮,则在窗体上显示的内容是 ( A) H HH HH ( B) H HHHH ( C) HHHHH ( D) H HH HHHH 6 下列程序段的执行结果为 a=6 For k=1 To 0 a=a+k Next Print k; a ( A) -1 6 ( B) -1 16 ( C) 1 6 ( D) 11 21 7 在窗体上画一个文本框 (其 Name属性为 Text1),然后编写如下事件过程: Private Sub Form_Load() Text1.Text=“ Text1.SetFocus For i=1 T
5、o 9 Sum=Sum+i Next i Text1.Text=Sum End Sub 上述程序的运行结果是 ( A)在文本框 Text1中输出 45 ( B)在文本框 Text1中输出 0 ( C)出错 ( D)在文本框 Text1中输出不定值 8 如果在 C盘当前文件夹下已存在名称为 studata.dat的顺序文件,那么执行语句Open“c:studata.dat“For Append As #1之后,将 ( A)删除文件中原有内容 ( B)保留文件中原有内容,并在文件尾填加新内容 ( C)保留文件中原有内容,并在文件头填加新内容 ( D)以上均不对 9 阅读下面的程序段: For a=
6、1 To 2 For b=1 To a For c=b To 2 i=i+1 Next Next Next Print i 执行上面的 3重循环后, i的值为 ( A) 4 ( B) 5 ( C) 6 ( D) 9 10 下列各种形式的循环中,输出 “*”的个数最少的循环是 ( A) a=5: b=8 Do Print “*“ a=a+1 Loop While a b ( B) a=5: b=8 Do Print “*“ a=a+1 Loop Until a b ( C) a=5: b=8 Do Until a-b Print “*“ b=b+1 Loop ( D) a=5: b=8 Do U
7、ntil a b Print “*“ a=a+1 Loop 11 如果准备读文件,打开顺序文件 “text.dat“的正确语句是 ( A) Open“text.dat”For Write As #1 ( B) Open“text.dat”For Binary As #1 ( C) Open“text.dat”For Input As #1 ( D) Open“text.dat”For Random As #1 12 有如下函数过 程: Function Fun(By Val x As Ingeger, ByVal y As Integer)As Integer Do WhileY 0 remi
8、nder=x Mod Y x=y y=reminder Loop Fun=X End Function 以下是调用该函数的事件过程,该程序的运行结果是 Private Sub Command1_Click() Dim a As Integer Dim b As Integer a=100:b=25 x=Fun(a,b) Print x End Sub ( A) 0 ( B) 25 ( C) 50 ( D) 100 13 在窗体上添加一个 R命令按钮,名称为 Command1,然后为该命令按钮编写如下事件过程,该过程的执行结果为 Option Base 1 Private Sub Command
9、1_Click() Dim a As Variant a=Array(1,2,3,4) j=1 For i=4 To 1 Step-1 S=S+a(i)*j j=j*10 Next Print s End Sub ( A) 4321 ( B) 1234 ( C) 34 ( D) 12 14 下列语句中正确的是 ( A) If AB Then Print“A不等于 B“ ( B) If A B Then Printt“A不等于 B“ ( C) If A B Then Print“A不等于 B“ ( D) If AB Print“A不等于 B“ 15 下面程序运行后,输出的结果是 Dim arr(
10、3,3) For j=1 To 3 For k=1 To 3 Arr(j,k)=(j-1)*3+k Next k Next j For j=2 To 3 For j=2 To 3 Print art(k,j); Next k Print Next j ( A) 2 5 3 6 ( B) 5 8 6 9 ( C) 4 7 5 8 ( D) 5 9 6 8 16 算法的空间复杂度是指 ( A)算法程序的长度 ( B)算法程序中的指令条数 ( C)算法程序所占的存储空间 ( D)执行算法需要的内存空间 17 在结构化程序设计中,模块划分的原则是 ( A)各模块应包括尽量多的功能 ( B)各模块的规模
11、应尽量大 ( C)各模块之间的联系应尽量紧密 ( D)模块内具有高内聚度,模块间具有低耦合度 18 下列叙述中,不属于测试的特征的是 ( A)测 试的挑剔性 ( B)完全测试的不可能性 ( C)测试的可靠性 ( D)测试的经济性 19 下面关于对象概念的描述中错误的是 ( A)对象就是 c语言中的结构体变量 ( B)对象代表着正在创建的系统中的一个实体 ( C)对象是一个状态和操作 (或方法 )的封装体 ( D)对象之间的信息传递是通过消息进行的 20 下列关于队列的叙述中正确的是 ( A)在队列中只能插入数据 ( B)在队列中只能删除数据 ( C)队列是先进先出的线性表 ( D)队列是先进后
12、出的线性表 21 已知二叉树后序遍历序列是 dabec,中序遍历序列是 debac,它的前序遍历序列是 ( A) acbed ( B) decab ( C) deabc ( D) cedba 22 某二叉树中有 n个度为 2的结点,则该二叉树中的叶子结点数为 ( A) n+1 ( B) n-1 ( C) 2n ( D) n/2 23 下列叙述中正确的是 ( A)用 E-R图能够表示实体集间一对一的联系、一对多的联系和多对多的联系 ( B)用 E-R图只能表示实体集之间一对一的联系 ( C)用 E-R图只能表示实体集之间一对多的联系 ( D)用 E-R图表示的概念数据模型只能转换为关 系数据模型
13、 24 下列有关数据库的描述正确的是 ( A)数据处理是将信息转化为数据的过程 ( B)数据的物理独立性是指当数据的逻辑结构改变时,数据的存储结构不变 ( C)关系中的每一列称为元组,一个元组就是一个字段 ( D)如果一个关系中的属性或属性组并非该关系的关键字,但它是另一个关系的关键字,则称其为本关系的外关键字 25 设 A$=“北京 ”, B$=“Shanghai”,则表达式 LEFTS(A$,2)+STRINGS(3,“-“)+LEFTS(BS,8)构成的字符串是 ( A)北京 ( B)北京 Shanghai ( C) Shanghai ( D)北京 Shanghai 26 文本框控件中将
14、 Text的内容全部显示为所定义的字符的属性项是 ( A) PasswordCbar ( B)需要编程来实现 ( C) Password ( D)以上都不是 27 设置组合框的风格,可用的属性是 ( A) Backstyle ( B) Borderstyle ( C) Style ( D) Sorted 28 设用复制、粘贴的方法建立了一个命令按钮数组 Command1,以下对该数组的说法错误的是 ( A)命令按钮的 所有 Caption属性都是 Command1 ( B)在代码中访问任意一个命令按钮只需使用名称 Command1 ( C)命令按钮的大小都相同 ( D)命令按钮共享相同的事件过
15、程 29 假定有一个菜单项,名为 MenuItem,为了在运行时使该菜单项失效 (变灰 ),应使用的语句为 ( A) MenuItem.Enabled=False ( B) MenuItem.Enabled=True ( C) MenuItem.Visible=True ( D) MenuItem.Visible=Flase 30 Sub过程与 Function过程最根本的区别是 ( A) Sub过程不能返回值,而 Function过程能返回值 ( B) Function过程可以有形参, Sub过程不可以 ( C) Sub过程可以使用 Call语句直接使用过程名调用,而 Function 过程
16、不可以 ( D)两种过程参数的传递方式不同 31 保存一个工程至少应保存两个文件,这两个文件分别是 ( A)文本文件和工程文件 ( B)窗体文件和工程文件 ( C)窗体文件和标准模块文件 ( D)类模块文件和工程文件 32 要获得文件列表框中当前被选中的文件的文件名,则应使用哪个属性 ( A) Dir ( B) Path ( C) Drive ( D) FileName 33 可以用作其他控件容器的控件是 ( A)窗体控件,列表框控件,图像控件 ( B)窗体控件,文本框控件,框架控件 ( C)窗体控件,框架控件,图片框控件 ( D)窗体控件,标签控件,图片框控件 34 以下程序的功能是:将一维
17、数组 A中的 100个元素分别赋给二维数组 B的每个元素并打印出来,要求把 A(1)到 A(10)依次赋给 B(1,1)到 B(1,10),把 A(11)到 A(20)依次赋给 B(2,1)到 B(2,10), ,把 A(91)到 A(100)依次赋给 B(10,1)到B(10,10)。请填空。 Option Base 1 Private Sub Form_Click() Dim i As Integer,j As Integer Dim A(1 To 100)As Integer Dim B(1 To 10,1 To 10)As Integer For i=1 To 100 A(i)=Int
18、(Rnd*100) Next i For i=1 To _ For j=1 To 10 B(i,j)= _ Print B(i,j); Next j Print Next i End Sub 35 以下程序用来产生 20个 (0, 99)之间的随机整数,并将其中的偶数打印出来。请填空。 Private Sub Command1_Clcik() Randomize For I=1 To 20 X=Int(Rnd* _ ) If X/2= _ Then Print x Next I End Sub 36 Visual Basic的对象是 _和控件的总称。 37 如果要在单击命令按钮时执行一段代码,
19、则应将这段代码写在 _事件过程中。 38 逻辑运算时,参与运算的两个量都为 False,结果才会是 False的逻辑运算是_运算。 39 默认情况下,工 具箱中只显示 _控件。 40 表达式 (73+1)*(18-1)的值是 _。 41 Visual Basic采用 _驱动的编程机制,程序员只需要编写响应用户动作的程序,而不必考虑按精确次序执行的每个步骤。 42 要使一个文本框具有水平和垂直滚动条,应先将其 MultiLine属性设置为True,然后再将 ScrollBar属性设置为 _。 43 要使工具栏控件的某按钮呈按钮菜单的样式,可以在其属性页中设置其 _选项为 5-tbrDropDow
20、n。 44 为了使一个标签透明且没有边框,必须把它的 BorderStyle属性设置为 _,并把 Backstyle属性设置为 0。 VB 笔试模拟试卷 212答案与解析 1 【正确答案】 C 2 【正确答案】 D 【试题解析】 此题考查的是有关鼠标事件的问题。从题目要求来看,上述事件应是鼠标事件过程,下面来看看有关鼠标事件的具体事件。 按下鼠标键事件过程: Private Sub Form_MouseDown(Button As Integer,_Shift As Integer, X As Single, Y As Single) End Sub 松开鼠标键事件过程: Private Su
21、b Form_Mouse Up(Button As Integer, Shift_As Integer, X As Single, Y As Single) End Sub 移动鼠标光标事件过程: Private Sub Form_MouseMove(Button As Integer,_Shift As Integer, X As Single, Y As Single) End Sub 以上 3个鼠标事件过程具有相同的参数,含义如下: Button 表示被按下的鼠标键; Shift表示 Shift、 Ctrl、 Alt键状态; X, Y表示鼠标光标的当前位置。 现在再来看一下事件过程,可知
22、此事件过程并非鼠标事件过程,并且 Button 也不是事件过程的参数,即此事件过程的两个参数 KeyCode和 Shift在程序运行过程中并没有得到任何信息,所以无论按什么键都不显示任何内容。 3 【正确答案】 B 【试题解析】 如果窗体的 BorderStyle属性设置为 Fixed Single,则窗体为固定单边框,可以包含控制菜单框、标题栏、最大化和最小化按钮,但要注意的是,如果窗口的 MaxButton 和 MinButton 属性设置为 True,则可以使用,运行时显示最大化和最小化按钮;如果设置为 False,则运行时不显示。 4 【正确答案】 D 5 【正确答案】 B 【试题解析
23、】 Click 事件是在按钮控件上按下然后释放一个鼠标按钮时发生。Print函数用于在指定窗口显示文本。 String 函数返回包含指定长度重复字符的字符串。题中嵌套 For循环,第一次 “i=1“,故 “for j=1 to 1“,输出 “H“,内层 J循环结束,输出空行。第二次 “i=2“,故 “for j=1 to 2“,内层 J循环 2次,输出“HHHH“,内层 J循环结束,输出空行, I循环结束。 6 【正确答案】 C 【试题解析】 For循环的一般格式是: For循环变量 =初值 To 终值 Step步长 语句 Exit For 语句 Next循环变量 该循环语句的执行过程为: “
24、循环变量 ”首先取得 “初值 ”,检查是否超过 “终值 ”,如果超过,就不循环并跳 出循环,属于 “先检查后执行 ”的类型。现在来看程序段, For k=1 To 0 中,初值为 1,终值为 0,显然当 “循环变量 ”首先取得 “初值 ”1,检查后超过 “终值 ”0,所以一次也不执行,即最后执行 Print时, k=1, a=6。 7 【正确答案】 C 【试题解析】 由于 Form_load 事件是在窗体加载时发生,所以此时窗体还没有显示,不能用 “Text1.SetFocus”语句获得焦点,故出错。如要改正,需要在此语句前加入 “Me.Show”,显示窗体,则可以看到文本框已获得焦点,并执行
25、循环语句,输出 “45”。 8 【正确答案】 B 9 【正确答案】 B 10 【正确答案】 C 【试题解析】 Do-Loop 循环的执行规则是: Do-LoopWhile|Until形式的循环是先执行循环体,然后再进行条件判断; DoWhile|Until-Loop 形式的循环是先进行条件判断,然后决定是否执行循环体。 While表达式的含义是:若表达式为 “真 ”,则执行循环体;若表达式为 “假 ”,则结束循环。 Until表达式的含义是:若表达式为 “假 ”,则执行循环体;若表达式为 “真 ”,则结束循环。 根据以上分析,选项 A)输出 3个 “*”,选项 B)输出 1个 “*”,选项 C
26、)没有输出“*”,选项 D)输出 4个 “*”。 11 【正确答案】 C 12 【正确答案】 B 13 【正确答案】 B 14 【正确答案】 C 15 【正确答案】 B 【试题解析】 依题意,声明一个三行三列的数组,并用嵌套 for循环赋值如下: arr(1,1)=1 arr(2,1)=4 arr(3,1)=7 arr(1,2)=2 arr(2,2)=5 arr(3,2)=8 arr(1,3)=3 arr(2,3)=6 arr(3,3)=9 最后用 Print函数输出 arr(2,2), arr(3,2),空行, arr(2,3), arr(3,3)。 16 【正确答案】 D 【试题解析】 算
27、法的复杂度主要包括算法的时间复杂度和算法的空间复杂度。算法的时间复杂度是指执行算法所需要的计算工作量;算法的空间复杂度是指执行这个算法所需要的内存空间。 17 【正确答案】 D 【试题解析】 在结构化程序设计中,一般较优秀的软件设计尽量做到高内聚、低耦合,这样有利于提高软件模块的独立性,也是模 块划分的原则。 18 【正确答案】 C 【试题解析】 软件测试的目标是在精心控制的环境下执行程序,以发现程序中的错误,给出程序可靠性的鉴定。它有 3个方面的重要特征,即测试的挑剔性、完全测试的不可能性及测试的经济性。没有测试的可靠性这一说法。 19 【正确答案】 A 【试题解析】 对象是由数据和容许的操
28、作组成的封装体,与客观实体有直接的对应关系。对象之间通过传递消息互相联系,从模拟现实世界中不同事物彼此之间的联系, 20 【正确答案】 C 【试题解析】 队列是一种操作受限的线性表 。它只允许在线性表的一端进行插入操作,另一端进行删除操作。其中,允许插入的一端称为队尾 (rear),允许删除的一端称为队首 (front)。队列具有先进先出的特点,它是按 “先进先出 ”的原则组织数据的。 21 【正确答案】 D 22 【正确答案】 A 【试题解析】 对于任何一棵二又树 T,如果其终端结点 (叶子 )数为 n1,度为 2的结点数为 n2,则 n1=n2+1,所以该二叉树的叶子结点数等于 n+1。
29、23 【正确答案】 A 【试题解析】 两个实体之间的联系实际上是实体集间的函数关系,这种函数关 系可以有下面 3种,即一对一的联系、一对多 (或多对一 )的联系和多对多的联系。概念模型便于向各种模型转换。由于概念模型不依赖于具体的数据库管理系统,因此,容易向关系模型、网状模型和层次模型等各种模型转换。 24 【正确答案】 D 【试题解析】 数据处理是指将数据转换成信息的过程,故选项 25 【正确答案】 B 【试题解析】 由于函数 Left$是从字符串的左边取出 N个字符, Unicode编码将一个汉字和一个西文字符都视为一个字符,因此函数值仍是:北京和 Shanghai,函数 String$返
30、回 N个指定字符构成字符串,因此函数值是 -。将它们连接在一起构成字符串 “北京 -Shanghai“。 26 【正确答案】 A 【试题解析】 PasswordChar属性返回或设置一个值,该值指示所键入的字符或占位符在 TextBox 控件中是否要显示出来;返回或设置用作占位符。 27 【正确答案】 C 【试题解析】 Style属性返回或设置一个值,指定控件的行为或外观。 28 【正确答案】 B 【试题解析】 访问控件数组中的一个控件应使用名称加索引,如: 控件名称 (索引值 ) 29 【正确答案】 A 【试题解析】 使菜单项不对用户产生的事件作出反应 (变灰 ),应把其 Enabled 属
31、性设置为 False。 30 【正确答案】 A 31 【正确答案】 B 【试题解析】 保存一个工程至少应保存窗体文件和工程文件。 32 【正确答案】 D 【试题解析】 本题考查文件列表框控件的相关属性。 FileName属性用来设置或返回程序运行过程中当前选中的文件名称。 Path 属性用来设置或返回程序运行过程中当前选中的文件的路径。 33 【正确答案】 C 【试题解 析】 窗体控件、框架控件和图片框控件可以作为其他控件的容器。 34 【正确答案】 10 A(i-1)*10+j) 35 【正确答案】 98+1 Int(X/2)或 X2 36 【正确答案】 窗体 37 【正确答案】 Click 38 【正确答案】 or(或 ) 39 【正确答案】 内部 (标准 ) 40 【正确答案】 -54 41 【正确答案】 事件 42 【正确答案】 3 43 【正确答案】 样式 44 【正确答案】 0