1、国家二级 VB机试(选择题)模拟试卷 210及答案与解析 一、选择题 1 在结构化方法中,用数据流程图 (DFD)作为描述工具的软件开发阶段是 ( )。 ( A)逻辑设计 ( B)需求分析 ( C)详细设计 ( D)物理设计 2 对序线性表 (23, 29, 34, 55, 60, 70, 78)用二分法查找值为 60的元素时,需要比较次数为 ( )。 ( A) 1 ( B) 2 ( C) 3 ( D) 4 3 下列描述中,正确的是 ( )。 ( A)线性链表是线性表的链式存储结构 ( B)栈与队列是非线性结构 ( C)双向链表是非线性结构 ( D)只有根结点的二叉树是线性结构 4 开发大型软
2、件时,产生困难的根本原因是 ( )。 ( A)大型系统的复杂性 ( B)人员知识不足 ( C)客观世界千变万化 ( D)时间紧、任务重 5 两个或两个以上的模块之间关联的紧密程度称为 ( )。 ( A)耦合度 ( B)内聚度 ( C)复杂度 ( D)连接度 6 下列关于线性表的叙述中,不正确的是 ( )。 ( A)线性表可以是空表 ( B)线性表是一种线性结构 ( C)线性表的所有结点有且仅有一个前件 和后件 ( D)线性表是由 n个元素组成的一个有限序列 7 设有如下关系表: 则下列操作正确的是 ( )。 ( A) T=R S ( B) T=RS ( C) T=RS ( D) T=R S 8
3、 以下描述中,不是线性表顺序存储结构特征的是 ( )。 ( A)可随机访问 ( B)需要连续的存储空间 ( C)不便于插入和删除 ( D)逻辑相邻的数据物理位置上不相邻 9 在三级模式之间引入两层映像,其主要功能之一是 ( )。 ( A)使数据与程序具有较高的独立性 ( B)使系统具有较高的通道能力 ( C)保持数据与程序的一致性 ( D)提高存储空间的利用率 10 下列方法中,属于白盒法设计测试用例的方法的是 ( )。 ( A)错误推测 ( B)因果图 ( C)基本路径测试 ( D)边界值分析 11 假定 Picture1和 Text1分别为图片框和文本框的名称,下列不正确的语句是( )。
4、( A) Print 25 ( B) Picture1 Print25 ( C) Text Print 25 ( D) Debug Print 25 12 为了在运行时能显示窗体左上角的控制框 (系统菜单 ),可 以设置以下哪个属性的值为 True( )。 ( A) ControlBOX ( B) MinButton ( C) MaxButton ( D) BorderStyle 13 设有以下函数过程 Pdvate Function Fun(a() As Integer, b As Slring) As Integer End Function 若已有变量声明: Dim x(5)As Int
5、eger, n As Integer, ch As String 则下面正确的过程调 用语句是 ( )。 ( A) x(O)=Fun(x, “ch“) ( B) n=Fun(n, ch) ( C) Call Fun x, “ch“ ( D) n=Fun(x(5), ch) 14 在窗体上画一个命令按钮,然后编写如下事件过程: Private Sub Command 1 Clickf) For i=1 To 4 X=4 Forj=1 To 3 X=3 For k=1 to 2 X=X+6 Next k Nextj, i Print X End Sub 运行程序后,单击命令按钮,输出结果是 ( )
6、。 ( A) 7 ( B) 15 ( C) 157 ( D) 538 15 下列叙述中有错误的是 ( )。 ( A)变量名的第一个字符必须是字母 ( B)变量名的长度不超过 255个字符 ( C)变量名可以包含小数点或者内嵌的类型声明字符 ( D)变量名不能使用关键字 16 在用 Open语句打开文件时,如果省略 “For方式 ”,则打开的文件的存取方式是( )。 ( A)顺序输入方式 ( B)顺序输出方式 ( C)随机存取方式 ( D)二进制方式 17 下列是 Visual Basic中所允许的形式数是 ( )。 ( A) +25 74 ( B) 3 457E100 ( C) 368 ( D
7、) 1 87E+50 18 指令 “Circle(1500, 1200), 1000, , 0 5”将会绘制出的图形为 ( )。 ( A)圆 ( B)正方形 ( C)椭圆 ( D)圆弧 19 在表达式 2+3*45-Sin(x+1) 2中,首先进行的运算是 ( )。 ( A) 45 ( B) 3*4 ( C) x+1 ( D) Sin() 20 在窗体上有一个名为 Command1的命令按钮,并有如下事件过程: Private Sub Command1_Click() aS=“Swallows Mod Genulled“ b$=Right(aS, 8): c$=Mid(aS, 1, 8) Ms
8、gBox aS, b$, c$, 1 End Sub 程序执行时,单击命令按钮,则在弹出的消息框的标题栏中显示的是 ( )。 ( A) Swallows Mod Genulled ( B) Genulled ( C) Swallows ( D) 1 21 在文本框控件中,将 Text的内容全部显示为用户所定义的字符的属性是 ( )。 ( A) PasswordChar ( B)需要编程来实现 ( C) Password ( D)以上都不是 22 下列关于控件焦点的叙述中正确的是 ( )。 ( A)标签控件不能接收焦点事件 ( B)如果将文本框控件中 TabStop属性值设为 False,则该文
9、本框将不能接收焦点事件 ( C)窗体控件不能接收焦点事件 ( D)不能通过程序代码设置焦点属性 23 为了使 名称为 Command1的命令按钮右移 200,应使用的语句是 ( )。 ( A) Command1 Move-200 ( B) Command1 Move 200 ( C) Command1 Left=Command1 Left+200 ( D) Command1 Left=Command1 Left-200 24 在窗体上画一个名为 Checkl的复选框,如果在窗体启动事件中编写语句“Checkl Enabled=False”,则运行后复选框的状态为 ( )。 ( A)选中状态 (
10、 B)未选中状态 ( C) 0 ( D)灰色 25 在窗体上有一个名称为 List1的列表框和一个名称为 Command1的命令按钮,并编写有如下事件过程: Private Sub Form_Load() List1 Addltem“Item1“: List1 Addltem “Item2“: List1 Addltem”Item3” End Sub Private Sub Command1_Click() List1 List(List1 ListCount)=“New Item“ End Sub 程序执行时,单击命令按钮,其结果为 ( )。 ( A)把字符串 “New Item”添加到列表
11、框中,但位置不能确定 ( B)把列表框中原有的最后一项改为 “New Item” ( C)把字符串 “New Item”添加到列表框的最后 (即 “Item3”的后面 ) ( D)把字符串 “New Item”插入到列表框的最前面 (即 “Item1”的前面 ) 26 设窗体上有 1个水平滚动条,已经通过属性窗口把它的 Max属性设置为 1,Min属性设置为 100。下面叙述中正确的是 ( )。 ( A)程序运行时,若使滚动块向左移动,滚动条的 Value属性值就减少 ( B)由于滚动条的 Max值小于 Min值,程序运行时滚动条的长度会缩为一点,滚动块无法移动 ( C)程序运行时,若使滚动块
12、向左移动,滚动条的 Value属性值就增加 ( D)由于滚动条的 Max属性值小于 Min属性值,程序会出错 27 当用 ( )方式打开文件时,如果对文件进行写操作,则写入的数据附加到原文件的后面。 ( A) Output ( B) Append ( C) Input ( D) Random 28 设有下列语句: x=5 Ifx0 Then y=1 y=5 程序运行后,则下列叙述中正确的是 ( )。 ( A)变量 y的值是 1 ( B)变量 y的值是 5 ( C)变量 x的值是 5,变量 y的值是 1 ( D)变量 y的值不能确定 29 下面的程序运行时,单击窗体后,窗体上显示的结果是 ( )
13、。 Private Sub Form_Click() Dima(1 To 6)As Integer Dim mini, i, j, n, t, k a(1)=8: a(2)=6: a(3)=9: a(4)=3: a(5)=2: a(6)=7 n=6 For i=1 To n-1 min 1=i For j=i+1 To n If a(j)=n a=a-n: m=m+l Wend fun=m End Function 该函数的返回值是 ( )。 ( A) a乘以 n的乘积 ( B) a加 n的和 ( C) a减 n的差 ( D) a除以 n的商 (不含小数部分 ) 32 下面程序运行后,语句 “
14、Print i”执行的次数是 ( )。 Private Sub Form_Click() Dim i As Integer, j As Integer i=0 Do i=i+1 Forj=10 To 1 Step-3 i=i+j Printi Next j Loop While i50 End Sub ( A) 4 ( B) 8 ( C) 12 ( D) 16 33 标准模块中有如下程序代码: Public x As Integer, Y As Integer Sub TempSub() x=10: y=20 End Sub 在窗体上有 1个命令按钮,并有如下事件过程: Private Sub
15、 Command1_Click() Dim x As Integer Call TempSub x=x+100: y=y+100 Print x; y End Sub 运行程序后单击命令按钮,窗体上显示的是 ( )。 ( A) 110 100 ( B) 100 100 ( C) 100 120 ( D) 110 120 34 在窗 体上有一个名称为 Checkl的复选框数组 (含 4个复选框 ),还有一个名称为Text1的文本框,初始内容为空。程序运行时,单击任何复选框,则把所有选中的复选框后面的文字罗列在文本框中 (如图所示 )。下面能实现此功能的事件过程是( )。 ( A) Private
16、 Sub Checkl_Click(Index As Integer) TeXtl Text=“ For k=0 To 3 If Checkl(k) Value=1 Then Text1 Text=Text1 Text& Checkl(k) Caption&“ “ 双引号中是空格 End If Next k End Sub ( B) Private Sub Checkl Click(Index As Integer) For k=0 To 3 If Checkl(k) Value=1 Then Text1 Text=Text1 Text& Checkl(k) Caption “ “ 双引号中是
17、空格 End If Next k End Sub ( C) Pfivme Sub Checkl Click(Index As Integer) Text1 Text=“ For k=0 To 3 If Check l(Index) Value=1 Then Text1 Text=Text1 Text&Check1 (Index) Caption&“ “ 双引号中是空格 End If Next k End Sub ( D) Private Sub Checkl_Click(Index As Integer) Text1 Text=“ For k=0 To 3 If Checkl(k) Value
18、=1 Then Text1 Text=Text1 Text&Checkl (k) Caption&“ “ 双引号中是空格 Exit For End If Next k End Sub 35 在 E盘当前目录文件夹下建立一个名为 “Student txt”的随机文件,要求用InputBox函数输入 5个学生的姓名 (StuName)、年级 (StuGrade)和年 龄 (StuAge)。在程序中有以下记录类型和窗体的事件过程,请选择正确的语句完成程序 ( )。 Private Type student StuName As String*10 StuGrade As String*10 StuA
19、ge As Integer End Type Privme Sub Form_Click() Dim s As student Open“c: Mtudent txt“For Random As #1 Len=Len(s) For i=l To 5 s StuName=InputBox(“请输入姓名 “) s StuGrade=InputBox(“请输入年级号 “) s StuAge=Val(1nputBox(“请输入年龄 “) _ Next i Close #1 End Sub ( A) Print #1, s ( B) Print #1, i ( C) Put #1, s ( D) Put
20、#1, i 36 单击命令按钮执行以下程序, 则输出结果为 ( )。 Private Sub Command1_Click() Dim x As Integer, y As Integer x=14: y=48: Call Proc(x, y) Print x; y End Sub Public Sub Proc(nAs Integer, ByVal m As Integer) n=n Mod 10: m=m MOd 10 End Sub ( A) 4 8 ( B) 14 8 ( C) 14 48 ( D) 4 48 37 VB中有 3个键盘事件: KeyPress、 KeyDown、 Key
21、Up,若光标在 Text1文本框中,则每输入一个字母 ( )。 ( A)只触发 KeyUp事件 ( B)这 3个事件都会触发 ( C)只触发 KeyDown、 KeyPress事件 ( D)不触发其中任何一个事件 38 关于菜单设计,下列叙述中错误的是 ( )。 ( A)弹出式菜单也在菜单编辑器中定义 ( B)在菜单的标题栏中, “&”所引导的字母指明了访问该菜单项的访问键 ( C)程序运行过程中,可以重新设置菜单的 Visible属性 ( D)在同一窗体的菜单项中,不允许出现标题相同的菜单项 39 设工程中有 2个窗体: Form1、 Form2, Form1为启动窗体。 Form2中有菜单
22、,其结构如表。要求在程序运行时,在 Form1的文本框 Text1中输入口令并按回车键(回车键的 ASCII码为 13)后,隐藏 Form1,显示 Form2。若口令为 “XSLNCER”,所有菜单项都可见:否则看不到 “成绩录入 ”菜单项。为此,某人在 Form1窗体文件中编写如下程序: Private Sub Text1_KeyPrcss(KeyAscii As Integer) If KeyAscii=13 Then If 11ex1 Text=“XSLNCER“Then Form2 input Visible=True Else Form2 input Visible=False En
23、d If End If Form1 Hide Form2 Show End Sub 程序运行时发现刚输入口令时就隐藏了 Form1,显示了 Form2,程序需要修改。下面修改方案中正确的是 ( )。 ( A)把 2个 Form2 input Visible中的 “Form2”删去 ( B)把 Form1中 Text1文本框及相关程序放到 Form2窗体中 ( C)把 IfKeyAsii=13 Then改为 If KeyAscii=“XSLNCER”Then ( D)把 Form1 Hide、 Form2 Show两行移动到 2个 End If之间 40 在窗体上有一个名称为 Drive1的驱动
24、器列表框,一个名称为 Dir1的目录列表框,一个名称为 File1的文件列表框,两个名称分别为 Label1、 Label2的标签 (标题分别为空白和 “共有文件 ”)。要使得驱动器列表 框与目录列表框、目录列表框与文件列表框同步变化,并且在标签 Label1中显示当前文件夹中文件的数量。下列能够正确实现上述功能的程序是 ( )。 ( A) Private Sub Dirl_Change() Filel Path=Dirl Path End Sub Private Sub Drive1_Change() Dirl Path=Drivel Drive Label1 Caption=File1 L
25、istCount End Sub ( B) Private Sub Dirl_Change() Filel Path=Dirl Path End Sub Privme Sub Drivel_Shange() Dirl Path=Drivel Drive Label1 Caption=File1 List End Sub ( C) Private Sub Dirl_Change() Filel Path=Dirl Path Label1 Caption=File1 ListCount End Sub Private Sub Drive1_Change() Dirl Path=Drive1 Dri
26、ve Label1 Caption=File1 ListCount End Sub ( D) Private Sub Dirl_Change() File1 Path=Dir1 Path Label1 Caption=File1 List End Sub Privme Sub Drivel_Change() Dirl Path=Drivel Drive Label1 Caption=File1 List End Sub 国家二级 VB机试(选择题)模拟试卷 210答案与解析 一、选择题 1 【正确答案】 B 【试题解析】 软件开发阶段包括需求分析、总体设计、详细设计、编码和测试五个阶段。其中需
27、求分析阶段常用的工具是数据流图和数据字典。 2 【正确答案】 C 【试题解析】 根据二分法查找法需要两次: 首先将 60与表中间的元素 55进行比较,由于 60大于 55,所以在线性表的后半部分查找。 第二次比较的元素是 后半部分的中间元素,将 60与表中间的元素 70进行比较,由于 60小于 70,所以在线性表的前半部分查找。 第三次比较的元素是前半部分的中间元素,即 60,这时两者相等,即查找成功。 3 【正确答案】 A 【试题解析】 根据数据结构中各数据元素之间前后关系的复杂程度,一般将数据结构分为两大类型:线性结构与非线性结构。如果一个非空的数据结构满足下列两个条件: 有且只有一个根结
28、点; 每个结点最多有一个前件,也最多有一个后件。则称该数据结构为线性结构,又称线性表。所以线性表、栈与队列、线性链表都是线性结构,而二 叉树是非线性结构。 4 【正确答案】 A 【试题解析】 随着计算机软件规模的扩大,软件本身的复杂性不断增加,研制周期显著变长,正确性难以保证,软件开发费用上涨,生产效率急剧下降,从而出现了人们难以控制软件发展的局面,即所谓的 “软件危机 ”。 5 【正确答案】 A 【试题解析】 耦合度是模块间互相连接的紧密程度的度量;内聚度是一个模块内部各个元素间彼此结合的紧密程度的度量。 6 【正确答案】 C 【试题解析】 线性表是一种线性结构,由 n(n0)个元素组成,所
29、以线性表可以是空表。但 是在线性表中,第一个结点没有前件,最后一个结点没有后件,其他结点有且只有一个前件和后件,所以选项 C)是错误的。 7 【正确答案】 C 【试题解析】 T就是关系 R中有的,同时 S中也有的有序组 (4、 5、 6),即交运算 (n)。 8 【正确答案】 D 【试题解析】 线性表的顺序存储是用一片连续的空间来存放数据元素,其特点是逻辑上相邻的元素在物理位置上也相邻。数据元素之间逻辑上的先后关系自动隐含在物理位置的相邻元素之中,因此不需要另外开辟空间来保存元素之间的关系。 9 【正确答案】 A 【试题解析】 数据库管理系统在数据库的三级模式之间提供了两层映像,保证了数据库中
30、数据的较高的逻辑独立性和物理独立性。 10 【正确答案】 C 【试题解析】 白盒测试方法也称为结构测试或逻辑测试,主要方法有逻辑覆盖测试、基本路径测试等。 11 【正确答案】 C 【试题解析】 Print方法可以在窗体上显示文本字符串和表达式值,并可在其他图形对象或打印机上输出信息。也可以在立即窗口输出信息。但不能在文本框控件上输出信息,因此选项 C不正确。 12 【正确答案】 A 【试题解析】 本题 考查窗体的常见属性。窗体中 ControlBox属性用来控制是否显示控制菜单,属性值为 False时不显示控制菜单。属性。 MinButton和MaxButton控制是否显示最大化和最小化按钮,
31、属性 BorderStyle则是设置窗体的边界样式。 13 【正确答案】 A 【试题解析】 在过程定义时如果将其形参定义为数组,则在调用该过程时所赋予的对应实参必须为数组名,而不能是普通变量、数组元素等。 Sub子过程可以使用 Call关键字来调用,但是 Function函数过程不可以使用 Call关键字调用,同时函数过程 有一个返回值,可以将其赋值给其他变量或者数组元素。 14 【正确答案】 B 【试题解析】 题目中是 3个 For语句嵌套循环,在第二个循环中每次都给 X赋值为 3,因此前面两个外循环可以忽略不及,只考虑最里层的循环即可,一次循环后的结果就是最后答案。即运行两次循环,当 k=
32、1时, X=X+6=3+6=9;当 K=2时, X=X+6=9+6=15。 15 【正确答案】 C 【试题解析】 本题考查变量命名。变量命名规则为以字母开头,后面可跟汉字、字母、数字或下划线,长度小于等于 255个字符,不能使用 VB中的 关键字。 16 【正确答案】 C 【试题解析】 Open语句打开文件时的格式为: Open 文件说明 For 方式 Access 存取类型 锁定 As#文件号 Len=记录长度 其中, “方式 ”可以是: Output指定顺序输出方式、 Input指定顺序输入方式、Append指定顺序输出方式,它与 Output不同的是,当用 Append方式打开文件时,文
33、件指针被定位在文件末尾,如果文件执行写操作,则写入的数据附加在原来文件的后面。 Random指定随机存取方式,也是默认方式。 17 【正确答案】 C 【试题解析】 本题考查 VB中的数据表示。 VB中的实数可以分为单精度和双精度,单精度指数形式为 n; nEm,表示数据的最大值为 3 402823E38;实际在使用的时候, “”不能同时出现。 18 【正确答案】 C 【试题解析】 本题考查绘图方法。 Circle可以用来绘制圆、椭圆以及圆弧。具体的使用格式为: “对象 Circle(x, y),半径,颜色,起始角,终止角,长短轴比例 ”:圆弧和扇形通过起始角和终止角来控制;椭圆通过长短轴比例来
34、设置,比例为 1或默认为圆。 19 【正 确答案】 C 【试题解析】 本题考查表达式的优先级。题目中表达式的优先级最高的是函数调用,先进行函数运算,接下来由高到低依次为算术运算符、字符运算符、关系运算符、逻辑运算符。算术运算符的优先级从高创低为: ()-, *, +-,因此首先进行的运算是 (x+1)。 20 【正确答案】 B 【试题解析】 本题考查 MsgBox过程。 MsgBox为提示框,在 MsgBox过程中,第 1个参数是提示信息,第 2个参数是按钮和图表的类型,若省略的话要有逗号占位,第 3个参数是对话框的标题。因此标题为变量 b中的内容。 21 【正确答案】 A 【试题解析】 本题
35、考查文本框常见属性。文本框的 Passwordchar属性设置显示文本为实际内容还是规定的字符显示;文本框控件不存在 Password属性。 22 【正确答案】 A 【试题解析】 本题考查控件的焦点。设置控件的 Tablndex属性可以改变控件的焦点的移动顺序,在窗体上绘制控件的时候, VB默认分配给控件的 Tablndex属性,第一个默认为 0,以下类推,可以在代码中更改。当控件的 Visible和Enabled属性为真时,控件可以接受焦点,某些控件没有焦 点,如标签、框架、计时器等。 TabStop属性决定是否可以使用 Tab来选定对象。 23 【正确答案】 C 【试题解析】 本题考查控件
36、的移动。窗体上的控件可以利用 Move方法或者 Left属性来发生移动。 Left属性表示控件的左边缘距容器左边缘的距离。因此命令按钮右移时: Left属性值增加。 Move方法为移动到的位置,其格式为: 对象 Move 左边距离 ,上边距离 宽度 ,高度 。 24 【正确答案】 D 【试题解析】 本题考查复选框的常见属性。复选框的 Enabled属性表示复选框 是否可用,为 True时复选框可用;为 False时复选框为灰色的,不可以使用。 25 【正确答案】 C 【试题解析】 本题考查列表框的常见属性。列表框中 ListCount表示现在列表框中存在的总的项目数,列表框的所有项都存放在 L
37、ist数组中,数组的下标从 0开始。题目中程序开始运行时, ListCount的值为 3,因此单击命令按钮时,执行的语句为: List1 List(3)=“New Item“,加入到所有项的后面。 26 【正确答案】 C 【试题解析】 滚动条通常用来帮助观察数据或确定位置, 也可用作数据输入的工具。其 Max属性用于设置或返回滚动条所能表示的最大值, Min属性用于设置或返回滚动条所能表示的最小值。默认情况下, Max的值大于 Min的值,即当滚动块向右移动时,其 Value属性值增加。如果希望滚动条显示的信息从较大数值向较小数值变化,可将 Min设置成大于 Max的值,此时当滚动块向左移动时
38、,其Value属性值增加。 27 【正确答案】 B 【试题解析】 本题考查文件的打开方式。以追加的方式打开文件时,每次写入的记录存放在文件的末尾。 28 【正确答案】 B 【试题解析 】 本题考查选择语句。选择语句一般分为两种形式,如果分支语句 If和 Then在同一行,不需要写上 End If语句,否则必须加上 End If语句。题目中 x的初值为 5,大于 0,因此执行 if语句, y值为 1;接下来执行赋值语句 y=5,因此y值变为 5。 29 【正确答案】 B 【试题解析】 本题考查循环程序的分析。程序主要包括两条循环语句,一条为两层循环的嵌套语句,内层循环找到当前 i到 n之间的最小
39、元素的下标,退出内循环则把最小元素放到 a(i)的位置, i从 1变化到 n-1;另外一条循环语句为输出数组中的所有元素, 即把排序以后的结果输出。 30 【正确答案】 D 【试题解析】 本题考查参数的传递和静态局部变量。 Sum函数在窗体单击事件中调用 5次并用来求和,因此每一次求和结果应当保留,所以借助静态变量实现。同时要求传递的形参变化不应影响到实参,因此采用传值调用。 31 【正确答案】 D 【试题解析】 本题考查函数过程的程序分析。函数体中包含了一条循环语句,循环变量 a,步长为 n, m则记录了在 a中共有多少个 n,也就是返回了 aha的商。 32 【正确答案】 C 【试题解析】
40、 本题考查双重循环的分 析。程序段中的循环结构为外循环DoLoop While ,内部又包括了 For循环,内循环的执行次数固定,每执行一次外循环,执行 4次内循环,每次执行完内循环后,外循环变量 i的值增加 23,因此外循环共执行了 3次。可推出内循环中的语句 Printi共执行了 12次。 33 【正确答案】 C 【试题解析】 在标准模块用 Public关键字声明的全局变量,其作用域最大,可以在工程的每个模块、每个过程中使用。但当不同作用范围的变量重名时,有效范围小的变量会屏蔽有效范围大的变量。当一个全局变量与一个过程级变量重名时, 当在本过程中直接使用这个变量名时,被认为是指局部变量。如
41、果要在这个过程中使用同名的全局变量,要使用模块名来修饰变量名。在本题的事件过程中,由于变量 x被声明为过程级变量,其初始值为 0,调用过程 TempSub不会改变其值,而变量 y为标准模块中声明的全局变量,调用过程 TempSub后其值为20。故最后输出结果为 100和 120。 34 【正确答案】 A 【试题解析】 本题考查复选框控件数组。复选框的 Value属性,决定了当前复选框的状态,当 Value为 1时表示选中复选框。按照题目中的要求,首先清空文本框, 接下来对复选框控件数组中的所有元素的 Value属性一一筛查,判断是否选中,把选中的复选框控件的 Caption属性值连接到文本框的
42、字符串中。 35 【正确答案】 C 【试题解析】 本题考查文件操作。题目中要求以随机的方式 (Random)打开一个文件,打开文件的格式为: Open FileName For Random As #文件号 Len=记录长度 ,然后以 Put命令写入一条记录,格式为: Put#文件号, 记录号 ,变量名。若省略记录号,表示在当前记录号下写入记录型变量,逗号 (, )不可以省略。 36 【正确答案】 D 【试题解析】 本题考查参数传递。在 VB的过程调用时,参数有两种传递方式:传址传递和传值传递。如果在过程声明时形参用 ByVal声明,说明此参数为传值调用;若用。 ByRef声明,说明此参数为传
43、址调用;如果没有说明传递类型,则默认为传址传递。由此可知题目中的实参 x为传址调用, y为传值调用,因此 n的变化影响 x,而 m变化不会影响 y。 37 【正确答案】 B 【试题解析】 当控件具有焦点时,如果按下一个字母键,将会依次触发此控件的KeyDown、 KeyUp和 KeyPress事 件。 38 【正确答案】 D 【试题解析】 本题考查菜单设计。 VB中所有的菜单都是在菜单编辑器中定义的。定义菜单时 “ ”后面的字母为访问该菜单项的访问键,每个菜单项都要有惟一的名字,在程序运行中可以根据名字来更改菜单的 Enabled、 Visible等属性。不同名称的菜单的标题可以相同。 39
44、【正确答案】 D 【试题解析】 根据题干的描述,刚刚输入口令的第一个字符时就隐藏了 Form1显示 Form2,与预期的键入回车时才隐藏 Form1显示 Form2不符,可以判断是在进行 KeyAscii条件 判断时出了问题。观察代码可以看到, Form1 Hide和Form2 Show语句处于 KeyAscii=13的 If判断之外,这样无论键入的第一个字符是否是回车都将执行这两条语句,造成了题干描述的错误现象。解决方案也很简单,只要把这两条语句移到两个 End If之间,令其受到 KeyAscii=13的 If判断即可。 40 【正确答案】 C 【试题解析】 本题考查文件系统控件。要使驱动器、目录和文件列表框同步显示,那么就需要编写代码才能使它们之间彼此同步,在驱动器 Drivel的 Change事件中,要 Dirl Path=Drivel Drive,使目录的路径和驱动器一致,同时在目录Dirl的 Change事件中要 Filel Path=Dirl Path,使文件路径的位置和驱动器一致。可以在文件列表框中使用 ListCount属性来统计文件数目 (当文件路径改变时统计 )。