1、国家二级( VB)机试模拟试卷 190及答案与解析 一、选择题 1 下列叙述中正确的是 ( )。 ( A)算法的时间复杂度与算法程序中的语句条数成正比 ( B)算法的时间复杂度与计算机的运行速度有关 ( C)算法的时间复杂度与运行算法时特定的输入有关 ( D)算法的时间复杂度与算法程序编制者的水平有关 2 下列各排序法中,最坏情况下的时间复杂度最低的是 ( )。 ( A)希尔排序 ( B)快速排序 ( C)堆排序 ( D)冒泡排序 3 设栈的存储空间为 S(1: 50),初始状态为 top=51。现经过一系列正常的人栈与退栈操作后, top=50,则栈中的元素个数为 ( )。 ( A) 1 (
2、 B) 0 ( C) 50 ( D) 49 4 某二叉树共有 399个结点,其中有 199个度为 2的结点,则该二叉树中的叶子结点数为 ( )。 ( A)不存在这样的二叉树 ( B) 200 ( C) 198 ( D) 199 5 结构化程序的三种基本结构是 ( )。 ( A)递归、迭代和回溯 ( B)过程、函数和子程序 ( C)顺序、选择和循环 ( D)调用、返回和选择 6 某系统结构图如下图所示 (n5) 该系统结构图的最大扇出数是 ( )。 ( A) n ( B) 3 ( C) 2 ( D) n+1 7 软件需求规格说明的内容不包括 ( )。 ( A)运行环境 ( B)软件的主要功能 (
3、 C)软件的性能 ( D)算法详细设计 8 在数据库管理技术发展的三个阶段中,没有专门的软件对数据进行管理的是( )。 ( A)人工管理阶段 ( B)文件系统阶段 ( C)文件系统阶段和数据库阶段 ( D)人工管理阶段和文件系统阶段 9 建立表示学生选修课程活动的实体联系模型,其中的两个实体分别是 ( )。 ( A)课程和课程号 ( B)学生和课程 ( C)学生和学号 ( D)课程和成绩 10 定义学生、教师和课程的关系模式 S(s#, sn, Sd, Dc, sa)(其属性分别为学号、姓名、所在系、所在系的系主任、年龄 ); C(C#, Cn, P#)(其属性分别为课程号、课程名、先修课 )
4、; SC(S#, C#, G)(其属性分别为学号、课程号和成绩 ),则该关系为 ( )。 ( A)第二范式 ( B)第一范式 ( C)第三范式 ( D) BCNF范式 11 当 Visual Basic表达式中含有以下多种运算时 ( )。 关系运算 算术运算 逻辑运算 函数运算 正确的运算顺序为 ( )。 ( A) ( B) ( C) ( D) 12 下列语句中,不能用于定义数组的关键字是 ( )。 ( A) Dim ( B) ReDim ( C) Static ( D) Const 13 针对 Visual Basic的菜单设计操作,下面叙述中错误的是 ( )。 ( A)同一个下拉菜单中允许
5、出现名称相同的菜单项 ( B)菜单项可以没有标题,但不能没有名称 ( C)可以设 置某个菜单项是否可见 ( D)菜单项的标题内容可以设置为 “一 ” 14 下列不是 Visual Basic合法常量的是 ( )。 ( A) &H15& ( B) abc ( C) 1 E一 8 ( D) #222015# 15 以下语句中正确的是 ( )。 ( A) Dim n(1 To 5, 10)As Single ( B) Dim m1, 5As Integer ( C) Option Base 5 ( D) Dim m(5)As Integer: ReDim m(10) 16 下面说法中正确的是 ( )
6、。 ( A)设 a=4, b=3, c=2,则语 Print abc的输出结果为 False ( B)语句 Const B As Double=Sin(2)的作用是定义名称为 B的符号常量 ( C) Case y Is =80是一个合法的 Case子句 ( D) MsgBox函数没有返回值 17 下列说法中正确的是 ( )。 ( A)在 Visual Basic工程中,可以作为启动对象的是 Sub Main过程或任何窗体 ( B)在 KeyPress事件过程中,利用其参数 KeyAscii可得到所有键盘键上标注 的字符 ( C)窗体的 Hide方法可以从内存中清除该窗体 ( D)从大键盘上输入
7、 21和从右侧小键盘上输入 “2”时,在 KeyDown事件过程中,其参数 KeyCode具有相同的值 18 执行下面程序段的输出是 ( )。 Print 1, 2; Print 3 Print 4; 5 ( A) 1 2 3 4 5 ( B) 1 2 3 4 5 ( C) 1 2 3 4 5 ( D) 1 2 3 4 5 19 设有如下数组声明: Dim a()As Single 下面关于这一声明的叙述中正确的是 ( )。 ( A)因为没有定义 a的维数和下标范围,该语句是错误的 ( B)若在此之后又用语句 ReDim定义了 a的维数和下标范围,则 a是一个合法的动态数组 ( C)因为没有定
8、义 a的维数和下标范围,默认 a是一维数组,下标范围为 0一 10 ( D) a是一维动态数组,可以直接使用,其元素个数可以变化 20 设程序中定义了下面的过程: Private Sub proc(ch As String) Print ch End Sub 下面语句中错误的是 ( )。 ( A) Call proc“OK” ( B) Call proc(“”) ( C) Call proc(“OK”) ( D) proc“OK” 21 下列方法中,能够使对象获得焦点的是 ( )。 ( A) GotFocus ( B) FocusOn ( C) SetFocus ( D) Focus 22 程
9、序运行时,要清除图片框 Picturel中的图像,应使用语句 ( )。 ( A) Picturel Clear ( B) Picturel Picture=“” ( C) Picturel Cls ( D) Picturel Picture=LoadPicture() 23 程序运行时,要清除组合框 Combol qlt,的所有内容,应使用语句 ( )。 ( A) Combol Delete ( B) Combol Cls ( C) Combol Clear ( D) Combol Remove 24 设窗体上有一个名称为 Text1的文本框,程序运行时,要求该文本框不能接受键盘输入,但能输出
10、信息,以下属性设置正确的是 ( )。 ( A) Textl Enabled=Flase ( B) Textl Locked=False ( C) Text1 Visible=Flase ( D) Text1 Width=0 25 以下说法中正确的是 ( )。 ( A)调用图像框的 Line方法可以在图像框中画线 ( B)把图片框的 Picture属性设置为 ”时,可以清除图片框中的图形 ( C)语句 P1 Picture=“sky jPg”可以在图片框 P1中装入名称为 sky。 jPg的图片文件 ( D)调用图片框的 Print方法可以在图片框中输出文本 26 能得到组合框 Combol中最
11、后一个列表 项序号的表达式是 ( )。 ( A) Combol Index ( B) Combol ListIndex ( C) Combol ListCount一 1 ( D) Combol List(ListCount) 27 设已经在菜单编辑器中设计了弹出式菜单 mnuStyle,要求程序运行时,当用户在文本框 Textl上单击鼠标右键时,能够弹出该菜单,则应使用的事件过程是( )。 ( A) Private Sub Text1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) If Butt
12、on=2 Then PopupMenu mnuStyle End If End Sub ( B) Private Sub Textl_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button=1 Then PopupMenu mnuStyle End If End Sub ( C) Private Sub TextlMouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button=2 Th
13、en mnuStyle Show End If End Sub ( D) Private Sub Text1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button=1 Then mnuStyle Popup End If End Sub 28 设窗体上有 1个名称为 Commandl的命令按钮,并编写了下面的事件过程: Private Sub CommandlMouseDown(Button As Integer, Shift As Integer, X As Single, Y A
14、s Single) Print X, Y End Sub 运行程序后,当用鼠标单击命令按钮时,则输出的是 ( )。 ( A)单击鼠标时鼠标光标相对于命令按钮左上角的坐标 ( B)单击鼠标时鼠标光标相对于窗体左上角的坐标 ( C)单击鼠标时鼠标光标相对于屏幕左上角的坐标 ( D)命令按钮左上角的坐标 29 下面关于计时器控件的叙述中正确的是 ( )。 ( A)一个窗体中只能使用一个定时器控件 ( B) Interval属性的值表示的是两次产生 Timer事件所间隔的秒数 ( C)计时器在程序运行时是不显示的,但也有 Left属性 ( D)如果 Enabled属性被设置为 True,则计时器一定被
15、启动,并定时产生 Timer事件 30 为了使通用对话框弹出的窗口标题显示为 “文件操 作 ”,应对通用对话框控件设置的属性是 ( )。 ( A) Caption ( B) DialogTitle ( C) FileName ( D) DialogCaption 31 编写如下程序代码: Private Sub CommandlClick() Dim t As Integer Dim n As Integer, x As Integer t=0 For n=1 To 12 x=2*n一 1 If x 3=x 3 Then t=t+1 Next Print t End Sub 程序运行后,单击命
16、令按钮 Command1,输出结果为 ( )。 ( A) 5 ( B) 3 ( C) 2 ( D) 4 32 分段函数入下: 设 x中已经有一个数值。下列程序段中,能正确计算 y值的是 ( )。 ( A) Select Case x Cage Is=0 Is=10 y=1 End Select ( C) Select Case x Case x=0 And XNUM Ptint a End Sub 当程 序运行时,单击窗体产生的输出结果是 ( )。 ( A) 5 ( B) 1 ( C) 6 ( D)出错 35 在窗体上画一个名称为 Textl的文本框,一个名称为 Commandl的命令按钮,并
17、编写如下事件过程: Private Sub Command 1Click() Dim arrayl(5, 5)As Integer Dim i As Integer, j As Integer For i=1 To 4 For j=1 To 4 arrayl(i, j)=i*10+j Next j Next i Textl Text=arrayl(2, 1)+arrayl(3, 2) End Sub 程序运行后,单击命令按钮,在文本框中显示的结果是 ( )。 ( A) 54 ( B) 53 ( C) 55 ( D) 56 36 在窗体上画一个名称为 Textl的文本框,编写如下事件过程代码:
18、Private Sub TextlKeyPress(KeyAscii As Integer) Dim ch As String ch=Chr(KeyAscii) If Not(ch=“0”And chUBound(a)And jUBound(b) End Sub 上面事件过程执行后产生的输出是 ( )。 ( A) 1 5 2 4 7 7 10 8 6 2 ( B) 1 2 2 4 5 6 7 7 8 10 ( C) 1 2 7 10 6 5 4 7 8 1 ( D) 1 2 5 4 7 7 8 2 10 6 40 有下面事件过程: Private Sub CommandlClick() Dim
19、 a(20)As Integer, n(5)As Integer Dim m As Integer, Bum As Integer Randomize For k=l To 20 a(k)=Int(Rnd*5)+1 Print a(k); n(a(k)=n(a(k)+1 Next k Print m=n(1) num=1 For k=2 To 5 If n(k)m Then m=n(k) num=k End If Next k Print m,num End Sub 此事件过程运行时会出现 2行输出,如果第一行输出是: 4 2 4 1 4 1 4 5 3 2 5 5 1 4 2 3 4 3 4
20、 2 则第 2行的输出是 ( )。 ( A) 5 3 ( B) 7 4 ( C) 3 5 ( D) 4 7 二、基本操作题 41 (1)在名称为 Form1的窗体上添加三个单选按钮,其名称分别为 Option1、Option2和 Option3(如图 1所示 ),然后通过属性窗口设置窗体和单选 按钮的属性,实现如下功能: 窗体标题为 “设置单选按钮属性 ”; 三个单选按钮的标题分别为 “按钮 1”、 “按钮 2”和 “按钮 3”; 初始状态为,第一个单选按钮为 “选中 ”; 程序运行后,第二个单选按钮 “不可用 ”; 程序运行后,第三个单选按钮不可见。程序的运行情况如图 2所示。要求:不编写任
21、何代码。注意:存盘时必须存放在考生文件夹下,工程文件名为 sjtl vbp,窗体文件名为 sjtl frm。 (2)在名称为 Form1的窗体上画一个垂直滚动条和一个命令按钮,其名称分别为 VScrolll和 Commandl编写适当的事件过 程。程序运行后,如果单击命令按钮,则按如下要求设置垂直滚动条的属性:Max=窗体高度 Min=0 LargeChange=50SmallChange=10如果移动垂直滚动条的滚动框,则在窗体上显示滚动框的刻度值。程序的运行情况如图所示。要求:不得使用任何变量。注意:存盘时必须存放在考生文件夹下,工程文件名保存为 sjt2 vbp,窗体文件名保存为 sjt
22、2 frm。 三、简单应用题 42 (1)在考生文件夹下有工程文件 sjt3 vbp,其窗体上有 1个标题为 “计算 ”的命令按钮, 1个标题为 “无理数 e的近似值 ”的 标签。请再画 1个初始内容为空的文本框Textl,如下左图所示。程序功能为:单击 “计算 ”命令按钮,则计算无理数 e的近似值,并将结果显示在 Textl文本框中。近似公式如下: e=1+1 1 !+1 2 !+13 !+1 n!+ 请将程序代码中的注释符去掉,把 ?改为正确内容,以实现上述程序功能。注意:考生不得修改窗体文件中已经存在的控件和程序,最后,程序按原文件名存盘。 (2)在考生文件夹下有一个工程文件 sjt4
23、vbp。其窗体中有 1个名称为 Command1,标题为 “查找 ”的命令按钮; 3个初始内容为空的文本框 Text1、Text2和 Text3,其中 Text1允许显示多行内容,且有垂直滚动条,如下右图所示。程序功能为:首先在 Text1中输入原始字符串,在 Text2中输入要查找的单个字符,然后单击 “查找 ”按钮,则在 Text3中显示查找的结果。图示为某一次的运行效果。请将 “查找 ”命令按钮 Click事件过程中的注释符去掉,把 ?改为正确内容,以实现上述程序功能。注意:考生不得修改窗体文件中已经存在的控件和程序,最后,程序按原文件名存盘。四、综合应用题 43 在考生文件夹下有一个工
24、程文件 sjt5 vbp,界面如图所示 ,其功能如下: 单击 “读数据 ”按钮,则把考生文件夹下文件 in5 dat中的 12组整数 (其中每组含有 10个数,共计 120个整数 )读到数组 a中; 单击 “计算 ”按钮,则对每组数求平均值,并将所求各级数的平均值截尾取整后存人 s数组中; 单击 “显示 ”按钮,则将所求各组数的平均值显示在文本框架 Textl中; 单击 “存盘 ”按钮则把计算结果存盘。在给出的窗体文件中已经有了全部控件,且 “读数据 ”、 “显示 ”和 “存盘 ”按钮的Click事件过程已经给出,请为 “计算 ”按钮编写适当的事件过程以实现上述功能。注意:不得修改已经存在的程
25、 序,在结束程序运行之前,必须用 “存盘 ”按钮存储计算结果,否则无成绩。最后,程序按原文件名存盘。 国家二级( VB)机试模拟试卷 190答案与解析 一、选择题 1 【正确答案】 C 【试题解析】 算法的时间复杂度是指执行算法所需要的计算工作量。为了能够比较客观地反映出一个算法的效率,在度量一个算法的工作量时,不仅应该与所使用的计算机、程序设计语言以及程序编制者无关,而且还应该与算法实现过程中的许多细节无关。为此,可以用算法在执行过程中所需基本运算的执行次数来度量算法的工作量。算法所执行的基本运算次 数还与问题的规模有关;对应一个固定的规模,算法所执行的基本运算次数还可能与特定的输入有关。故
26、本题答案为 c选项。 2 【正确答案】 C 【试题解析】 堆排序最坏情况时间下的时间复杂度为 O(nlog2n);希尔排序最坏情况时间下的时间复杂度为 O(nr)(1 3 【正确答案】 A 【试题解析】 栈是一种特殊的线性表,它所有的插入与删除都限定在表的同一端进行。入栈运算即在栈顶位置插入一个新元素,退栈运算即取出栈顶元素赋予指定变量。栈为空时,栈顶指针 top=0,经过入栈和退栈运算,指针始终指向栈顶元素 。初始状态为 top=51,当 top=50时,则栈中 S(50: 51)存储着元素, 5150=1,元素个数为 1。故本题答案为 A选项。 4 【正确答案】 B 【试题解析】 根据二叉
27、树的基本性质,对任何一棵二叉树,度为 0的结点 (即叶子结点 )总是比度为 2的结点多一个。题目中度为 2的结点为 199个,则叶子结点为 199+1=200。故本题答案为 B选项。 5 【正确答案】 C 【试题解析】 仅使用顺序、选择、循环三种基本控制结构就足以表达出各种其他形式结构的程序设计方法。故本题答案为 C选项。 6 【 正确答案】 A 【试题解析】 模块的扇出是指本模块的直属下层模块的个数,或者说是由一个模块直接调用的其他模块数。题干中某系统为一个模块,其扇出数目为 n(n5),功能 2模块扇出数为 3,功能 n模块扇出数为 2,则该系统结构图的最大扇出数是n。故本题答案为 A选项
28、。 7 【正确答案】 D 【试题解析】 软件需求规格说明应重点描述软件的目标,软件的功能需求、性能需求、外部接口、属性及约束条件等。功能需求是软件需求规格说明,给出软件要执行什么功能的详尽描述。性能需求是指定量的描述软件系统应满足的具体性能 需求,即各种软件功能的速度、响应时间、恢复时间。外部接口指软件如何与人、系统的硬件及其他硬件和其他软件进行交互。属性是指与软件有关的质量属性,如正确性、可用性、可靠性、安全性、可维护性等。约束条件包括影响软件实现的各种设计约束,如使用的标准、编程语言、数据库完整性方针、资源限制、运行环境等方面的要求。故本题答案为 D选项。 8 【正确答案】 A 【试题解析
29、】 数据库管理技术的三个阶段是人工管理阶段、文件系统阶段和数据库系统阶段。人工管理阶段没有专门的软件对数据进行管理。故本题答案为 A选项。 9 【正确答案】 B 【试题解析】 实体是概念世界中的基本单位,是客观存在并可以相互区别的事物。要建立表示学生选修课程活动的实体联系模型,能互相区别并可以联系起来的实体是学生和课程。故本题答案为 B选项。 10 【正确答案】 A 【试题解析】 范式是符合某一种级别的关系模式的集合。关系数据库中的关系必须满足一定的要求,满足不同程度要求的为不同范式。目前关系数据库有六种范式:第一范式 (1NF)、第二范式 (2NF)、第三范式 (3NF)、 BoyceCod
30、d范式(BCNF)、第四范式 (4NF)和第五范式 (5NF)。满足最低要求的范式是第一范式(1NF)。在第一范式的基础上进一步满足更多要求的称为第二范式 (2NF),其余范式以次类推。一般说来,数据库只需满足第三范式 (3NF)就行了。 第一范式:主属性 (主键 )不为空且不重复,字段不可再分 (存在非主属性对主属性的部分依赖 )。 第二范式:如果关系模式是第一范式,每个非主属性都没有对主键的部分依赖。 第三范式:如果关系模式是第二范式,没有非主属性对主键的传递依赖和部分依赖。 BCNF范式:所有属性都不传递依赖于关系的任何候选键。 题目中关系模式满足第二范式,但在关系模式 S中,学生所在系
31、依赖于学号(s#Sd) ,但系本身确定了系主任 (SdDc) ,存在传递依赖,不满足第三范式。故本题答案为 A选项。 11 【正确答案】 A 【试题解析】 一个表达式可能含有多种运算,计算机按一定的顺序对表达式求值。一般顺序如下: 首先进行函数运算; 接着进行算术运算; 然后进行关系运算; 最后进行逻辑运算。故本题 A选项正确。 12 【正确答案】 D 【试题解析】 在 Visual Basic中,可以使用 4个语句来定义数组,它们分别为Dim、 ReDim、 Static和 Public。 Const关键字主要是用来定义一个符号常量,故本题 D选项符合题意。本题选择 D选项。 13 【正确答
32、案】 A 【试题解析】 在 Visual Basic中每个菜单名和每个菜单项都是一个控件,都要为其取一个控制名,并且在同一个下拉菜单中,不能出现同名的菜单项,故 A选项叙述错误;名称属性是每个菜单项的唯一标识,不能为空,故 B选项叙述正确;可以通过设置菜单项的 Visible属性设置菜单的可见性,故 C选项叙述正确;如果在菜单项的 “标题 ”栏中输入一个 “一 ”,则表示产 生一个分割线,故 D选项叙述正确。本题选择 A选项。 14 【正确答案】 B 【试题解析】 Visual Basic中的常量分为两种,一种是文字常量,一种是符号常量,其中,文字常量又分为字符串常量和数值常量。 A选项为十六
33、进制长整型数值常量; C选项为浮点数常量; D选项为日期常量; B选项中字符串常量应该使用一对双引号括起来,而不应该用单引号,所以 B选项不是合法的常量。本题选择B选项。 15 【正确答案】 A 【试题解析】 在 Visual Basic中定义数组变量,使用下标变量时,必须把下标放在一 对紧跟在数组名之后的一对小括号中,所以 B选项是错误的数组定义方式;在一般情况下,数组下标的下界默认为 0,如果希望下标从 1开始,可以通过option Base 1语句来设置,并且 Option Base后只能跟 0或 1两个值,故 c选项错误;在 Visual Basic中动态数组以变量作为下标值,定义过程
34、分为两步,首先在过程中使用 Dim或 Public声明一个没有下标的数组 (括号不能省略 ),然后在过程中使用 ReDim语句定义带下标的数组, D选项中使用常量作为下标值,故动态数组定义错误,本题选项中声明一个二维数组的形式是 正确的。本题选择 A选项。 16 【正确答案】 A 【试题解析】 A选项中先执行 ab结果为 Tme, True转换为一 1,然后执行一 1 c,结果为 False,故 A选项正确;定义符号常量,可以定义符号常量来代替数值或字符串,【格式】 Const常量名 =表达式 ,常量名 =表达式 ,在常量名后加上类型说明符,如果不适用类型说明符,则根据表达式的求值结果确定常量
35、类型, B选项用 As Double指定常量类型的方式是错误的;在 SelectCase 多分支结构中, Case关键字后直接跟 Is表达式,不需要跟变量, C叙 述错误; MsgBox函数的返回值是一个整数,这个整数与选择的按钮有关, D选项叙述错误;本题选择A选项。 17 【正确答案】 A 【试题解析】 在 Visual Basic工程中,如果需要从其他窗体开始执行应用程序,可以通过 “工程 ”菜单中的 “工程属性 ”命令指定启动窗体。但是,如果有 Sub Main过程,则可以通过执行 Sub Main过程来启动窗体, A选项叙述正确;在。 Key Press事件过程中,参数 KeyAsc
36、ii是一个预定义的变量,执行 KeyPress事件过程时, KeyAscii是所按键的 ASCII码值,而不是键盘上标注的字符, B选项叙述错误;窗体的 Hide方法使窗体隐藏,即不在屏幕上显示,但仍在内存中, c选项叙述错误; KeyDown事件过程中的参数 KeyCode是按键的实际 ASCII码值,该码以 “键 ”为准,而不是以 “字符 ”为准。也就是说,大写字母与小写字母使用同一个键,它们的 KeyCode相同,但大键盘上数字键与数字键盘上相同的数字键的KeyCode是不一样的, D选项叙述错误。本题选择 A选项。 18 【正确答案】 A 【试题解析】 使用 Print输出表达式时,如
37、果输出的各表达式之间用逗号 分隔,则按标准输出格式 (分区输出格式 )显示数据项,在这种情况下,以 14个字符为单位把一个输出行分为若干个区段,逗号后面的表达式在下一区段输出。如果每个输出项之间用分号或空格作分隔符,则按紧凑输出格式输出数据;在一般情况下,每执行一次 Print方法都会自动换行,也就是说,后面执行 Print时将在新的一行上显示信息。为了仍在同一行上显示,可以在末尾加上一个分号或逗号,故本题 A选项为正确的输出形式。本题选择 A选项。 19 【正确答案】 B 【试题解析】 动态数组的定义分为两步:首先在窗体层、标准模块或过 程中用Dim或 Public声明一个没有下标的数组 (
38、括号不能省略 ),然后在过程中用 ReDim语句定义带下标的数组,所以 B选项叙述正确而 A选项叙述错误;数组 a是动态数组,不是一维数组, C选项和 D选项叙述错误 .本题选择 B选项。 20 【正确答案】 A 【试题解析】 用 Call语句调用一个过程时,如果过程本身没有参数,则 “实际参数 ”和括号可以省略;否则应给出相应的实际参数,并把参数放在括号中。在调用Sub过程时,如果省略关键字 Call,则应去掉 “实际参数 ”的括号, D选项正确,本题 A选项错误。 B和 C选项均正 确,本题选择 A选项。 21 【正确答案】 C 【试题解析】 在程序代码中使用 SetFocus方法可以设置
39、一个对象的焦点;当对象得到焦点时,会产生 GotFocus事件;而当对象失去焦点时,将产生 LostFocus事件,故本题 c选项正确。本题选择 C选项。 22 【正确答案】 D 【试题解析】 图片框中的图形可以用 LoadPicture函数删除,表达式为:图片框控件名 Picture=loadPicture()故本题 D选项符合题意。本题选择 D选项。 23 【正确答案】 C 【试题解析 】 组合框的 Clear方法用于清除列表框中的全部内容, C选项正确。本题选择 C选项。 24 【正确答案】 A 【试题解析】 文本框的 Enabled属性设置为 False,表示该文本框控件处于不可用状态
40、,即不能向文本框中输入信息,但是文本框可以输出内容,即 A选项正确。本题选择 A选项。 25 【正确答案】 D 【试题解析】 图像框控件无 Line方法, A选项叙述错误;删除图片框中的图形文件有两种方法, 选中图片框的 Picture属性,使用键盘的 Del键删除。 可以使用 LadPicturc()函数删 除,故 B选项删除图片框中的图形文件的方法是错误的;在图片框中装入图形文件可以使用 LoadPicture()函数,格式为: 对象 Picture=LoadPicture(“文件名 ”), C选项错误;图片框可以通过 Print方法接收文本,而图像框不能接收用 Print方法输入的信息,
41、 D选项叙述正确。本题选择D选项。 26 【正确答案】 C 【试题解析】 组合框的 Listcount属性列出列表框中表项的数量,列表框中表项的排列从 0开始,最后一项的序号为 Listcount1, C选项正确。本题选择 C选项。 27 【正确答案】 A 【试题解析】 为了显示弹出式菜单,通常把 PopupMenu方法放在 MouseDown事件中,该事件响应所有的鼠标单击操作。按照惯例,一般通过单击鼠标右键显示弹出式菜单,这可以用 Button参数来实现。对于鼠标来说,左键的 Button参数值为 l,右键的 Button参数设置为 2,因此,可以使用 “If Button=2 Then
42、P叩upMenu菜单名 ”语句可以通过单击鼠标右键来响应 MouseDown事件、显示弹出式菜单,故本题 A选项正确。本题选择 A选项。 28 【正确答案】 A 【试题解析】 本题考查按钮控件的鼠标按下事件过程,在 commandl一MouseDown事件过程中鼠标位置由参数 X、 Y确定,当鼠标移动到按钮上,单击鼠标,则触发 MouseDown事件过程,并输出鼠标光标相对于按钮控件左上角的位置,故 A选项叙述正确。本题选择 A选项。 29 【正确答案】 C 【试题解析】 一个窗体中可以添加多个计时器控件, A选项叙述错误;计时器的Interval属性是用来设置两次执行计时器事件之间的时间间隔
43、,以毫秒为单位, B选项叙述错误;如果计时器控件的 Enabled属性 被设置为 True,但是 111terval属性设置为 0,计时器事件也不会被启动,所以 D选项叙述错误;计时器控件在设计阶段会出现在窗体上,程序运行时就会自动消失,但是仍然有 Left属性, C选项叙述正确。本题选择 c选项。 30 【正确答案】 B 【试题解析】 通用对话框的标题,通过 DialogTitle属性设置,故 B选项正确。本题选择 B选项。 31 【正确答案】 D 【试题解析】 本题考查 For循环控制结构及 if语句的使用,程序开始时,定义 3个整型变量 t、 n和 x。 For循环结构中循环变量 n的初
44、 始值为 1,终止值为 12,条件判断语句 if的功能是判断变量 x的值是否能被 3整除若 x能被 3整除,则将变量 t加 1,循环执行过程中个变量的值如下: 当 n=1时, x=2*11=1,条件判断语句 if x 3=x 3为假; 当 n=2时, x=2*2一 1=3,条件判断语句 jf x 3=x 3为真,执行 t=t+1=1; 当 n=3时, x=2*31=5,条件判断语句 if x 3=x 3为假; 当 n=4时, x=2*41=7,条件判断语句 if x 3=x 3为假; 当 n=5时, x=2*51=9,条件判断语句 if x 3=x 3为真,执行 t=t+1=2; 当 n=6时
45、, x=261=11,条件判断语句 if x 3=x 3为假; 当 n=7时, x=2*71=13,条件判断语句 if x 3=x 3为假; 当 n=8时, x=2*81=15,条件判断语句 if x 3=x 3为真执行 t=t+1=3; 当 n=9时, x=2*9一 1=17,条件判断语句 if x 3=x 3为假; 当 n=10时, x=2*10一 1=19,条件判断语句 if x 3=x 3为假; 当 n=11时, x=2*111=21,条件判断语句 if x 3=x 3为真,执行 t=t+1=4; 当 n=12时, x=2*12一 1=23,条件判断语句 if x 3=x 3为假; 当
46、 n=13时,循环结束,最终 t的值为 4,故 D选项正确。本题选择 D选项。 32 【正确答案】 A 【试题解析】 在 select caseEnd select 结构中, case后可以接下列三种形式的值: 1表达式 ,表达式 ; 2表达式 To表达式; 3 Is关系运算表达式故 C选项错误。且当用关键字 Is定义条件时 ,只能是简单的条件,不能用逻辑运算符将两个或多个简单条件组合在一起,故 B选项和 D选项均错误; A选项符合题意。本题选择 A选项。 33 【正确答案】 B 【试题解析】 在过程 sub_pro中定义了一个静态整型变量 sum,与 Dim定义变量不同的是,用 Static
47、定义的变量,过程在被多次被调用时,其值可以继续保留。过程中使用的 for循环的功能是:对 1到 10之间的所有奇数进行求和,将结果保留到变量 sum中。程序 3次单击按钮,则过程 sub_pm过程被调用 3次,第 1次静态变量 sum的值为 25;第 2次调用 sub_pro过程时,第 1次 sum的值被保留,静态变量 sum第 2次的值为 50;第 3次调用 sub_pro过程时,第 2次 sum的值被保留,静态变量 sum第 3次的值为 75;故最终变量 sum的值为 75, B选项正确。本题选择 B选项。 34 【正确答案】 C 【试题解析】 本题在过程开始之前定义了一个符号常量 NuM
48、,并赋值为 5,在FomClick事件中,定义了整型变量 a和 b, a的初始值为 1, b的初始值为NuM。接着,程序使用 DoLoop until 结构,该结构的特点为:首先执行循环体语句,然后再判断循环条件是否 成立,并且只有当条件为假时,才会继续执行循环体。第一次执行循环体后,变量 a=6,变量 b=6,条件表达式 “bNuM”为真,循环结束,故最终输出变量 a的值为 6, C选项正确。本题选择 c选项。 35 【正确答案】 B 【试题解析】 程序开始时,定义了一个二维数组 arrayl,大小为 66。然后使用二重 For循环给部分数组元素赋值,其中 arrayl(2, 1)=2*10
49、+1=21, arrayl(3,2)=3*10+2=32,最后将两个数组元素的值相加后输出到 Textl文本框中,结果为53, B选项正确。本题选 择 B选项。 36 【正确答案】 A 【试题解析】 KeyPress事件过程中参数 KeyAscii是所按键的 AscII码, A选项叙述正确; chr为转换函数,可以将 AscII码转换为对应的字符,程序中使用 If语句判断 ch是否为非数字字符,若 ch为非数字字符,则退出程序,故程序横线处应填入语句 Exit sub,结束程序, B选项叙述错误;程序中按下键盘上任意按键,都会触发该事件 c选项叙述错误;与 Key Press事件不同, KeyDown事件返回的是键盘的按下状态,而 KeyPress并不反映键盘的按下状态 。故两个事件过程执行的功能小同, D选项叙述错误。本题选择