1、国家二级( VB)机试模拟试卷 157及答案与解析 一、选择题 1 算法的空间复杂度是指 ( )。 ( A)算法程序的长度 ( B)算法程序中的指令条数 ( C)算法程序所占的存储空间 ( D)算法执行过程中所需要的存储空间 2 下列叙述中正确的是 ( )。 ( A)一个逻辑数据结构只能有一种存储结构 ( B)逻辑结构属于线性结构,存储结构属于非线性结构 ( C)一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率 ( D)一个逻辑数据结构可以有多种存储结构,且各种存储结构影 响数据处理的效率 3 下列关于类、对象、属性和方法的叙述中,错误的是 ( )。 ( A)类是对一类具
2、有相同的属性和方法对象的描述 ( B)属性用于描述对象的状态 ( C)方法用于表示对象的行为 ( D)基于同一个类产生的两个对象不可以分别设置自己的属性值 4 在软件开发中,需求分析阶段产生的主要文档是 ( )。 ( A)数据字典 ( B)详细设计说明书 ( C)数据流图说明书 ( D)软件需求规格说明书 5 数据库设计的四个阶段是:需求分析、概念设计、逻辑设计和 ( )。 ( A)编 码设计 ( B)测试阶段 ( C)运行阶段 ( D)物理设计 6 在下列关系运算中,不改变关系表中的属性个数但能减少元组个数的是 ( )。 ( A)并 ( B)交 ( C)投影 ( D)除 7 下列叙述中,正确
3、的是 ( )。 ( A)软件交付使用后还需要进行维护 ( B)软件一旦交付使用就不需要再进行维护 ( C)软件交付使用后其生命周期就结束 ( D)软件维护是指修复程序中被破坏的指令 8 设一棵满二叉树共有 15个结点,则在该满二叉树中的叶子结点数为 ( )。 ( A) 7 ( B) 8 ( C) 9 ( D) 10 9 设 R是一个 2元关系,有 3个元组, S是一个 3元关系,有 3个元组。如T=RS,则 T的元组的个数为 ( )。 ( A) 6 ( B) 8 ( C) 9 ( D) 12 10 下列选项中,不属于数据库管理的是 ( )。 ( A)数据库的建立 ( B)数据库的调整 ( C)
4、数据库的监控 ( D)数据库的校对 11 语句 Print Sgn(-62)+Abs(-62)+Int(-62)的输出结果是 ( )。 ( A) -36 ( B) 1 ( C) -1 ( D) -72 12 下列各种窗体事件中,不能由用户触发的事件是 ( )。 ( A) Load事件和 Unload事件 ( B) Click事件和 Unload事件 ( C) Click事件和 DblClick事件 ( D) Load事件和 Initialize事件 13 关于变量作用域,下列叙述中正确的是 ( )。 ( A)在窗体的 Form Load事件过程中定义的变量是全局变量 ( B)局部变量的作用域可
5、以超出所定义的过程 ( C)在某个 Sub过程中定义的局部变量可以与其他事件过程中定义的局部变量同名,但其作用域只限 于该过程 ( D)在调用过程中,所有局部变量被系统初始化为 0或空字符串 14 下列可作为 Visual Basic变量名的是 ( )。 ( A) A#A ( B) constA ( C) ?xy ( D) 4A 15 设 a=“Visual Basic“,下面语句中可使 b=“Basic“的是 ( )。 ( A) b=Left(a, 8) ( B) b=Mid(a, 8, 5) ( C) b=Right(a, 8) ( D) b=Left(a, 8, 5) 16 InputB
6、ox函数返回值的类型为 ( )。 ( A) 数值 ( B)字符串 ( C)变体 ( D)数值或字符串 (视输入的数据而定 ) 17 在文本框中,要设置显示的文本颜色,应该设置 ( )属性。 ( A) ForeColor ( B) BackColor ( C) FillColor ( D) BackStvle 18 为了在窗体上建立 2组单选按钮,并且当程序运行时,每组都可以有一个单选按钮被选中,则以下做法中正确的是 ( )。 ( A)把这 2组单选按钮设置为名称不同的 2个控件数组 ( B)使 2组单选按钮的 Index属性分别相同 ( C)使 2组单选按钮 的名称分别相同 ( D)把 2组单
7、选按钮分别画到 2个不同的框架中 19 为组合框 Combo1增加一个列表项 “电脑 ”,下列语句正确的是 ( )。 ( A) Combo1 Text=“电脑 “ ( B) Combo1 ListIndex=“电脑 “ ( C) Combo1 AddItem“电脑 “ ( D) Combo1 ListCount=“电脑 “ 20 以下叙述错误的是 ( )。 ( A)滚动条的重要事件是 Change和 Scroll ( B)框架的主要作用是将控件进行分组,以完成各自相对独立的功能 ( C) 组合框是组合了文本框和列表框的特性而形成的一种控件 ( D)计时器控件可以通过对 Visible属性的设置
8、,在程序运行期间显示在窗体上 21 设 a=5, b=6, c=7, d=8,执行下列语句后, x的值为 ( )。 x=IIf(a b)And(c d), 10, 20) ( A) 10 ( B) 20 ( C) True ( D) False 22 下面程序运行时,单击窗体后,窗体上显示的结果是 ( )。 Private Sub Form_Click() Dim i As Intege, sum As Long Dimt As Long t=1: sum=0 For i=1To3 t=t*i sum=sum+t Nexti Print sum End Sub ( A) 3 ( B) 9 (
9、C) 5 ( D) 6 23 在窗体上画一个命令按钮 (Name属性为 Command1),然后编写如下事件过程: Private Sub Command1_Click() Dima(10)AsInterger, p(3)AsInterger K=5 For i=1To10 a(i)=i Next i For i=1To3 p(i)=a(j*i) Next i For i=1To3 k=k+p(i)*2 Next i Printk End Sub 程序运行后,单击命令按钮,输出结果是 ( )。 ( A) 35 ( B) 28 ( C) 33 ( D) 37 24 在运行阶段,要在文本框 Tex
10、t1获得焦点时选中文本框中所有内容,如图所示,对应的事件过程是 ( )。 ( A) Private Sub Text1_LostFocus() Text1 SelStart=0 Text1 SelLength=Len(Text1 Text) End Sub ( B) Private Sub Text1 GotFocus() Text1 SelStart=0 Text1 SelLength=Len(Text1 Text) End Sub ( C) Pfivme Sub Text1_Change() Text1 SelStart=0 Text1 SelLength=Len(Text1 Text)
11、End Sub ( D) Private Sub Text1_SetFocus() Text1 SelStart=0 Text1 SelLength=Len(Text1 Text) End Sub 25 下列程序段不正确的是 ( )。 ( A) Dim aAs Integer a=array(1, 2, 3, 4) ( B) Dim a(), b() a=array(1, 2, 3, ): b=a ( C) Dim a As Variant a=array(1, “asd“, true) ( D) Dim a()AsVariant a=array(1, 2, 3, 4) 26 在窗体上画一个命
12、令按钮 (其 Name属性为 Command1),然后编写如下代码: Option Base1 Private Sub Command1_Click() Dim a a=Array(1, 2, 3, 4): j=1 For i=4To1Step-1 s=s+a(i)*j: j=j*10 Next i Print s End Sub 运行上面的程序,单击命令按钮,其输出结果是 ( )。 ( A) 4321 ( B) 12 ( C) 34 ( D) 1234 27 在窗体上用复制、粘贴的方法建立了一个命令按钮数组,数组名为 ComTest1。设窗体 Form1标题为 “MyForm1”,双击控件数
13、组中的第 3个按钮,打开代码编辑器,编写如下 代码: Privae Sub ComTest1_Click(Index As Integer) Form1 Caption=“MyForm2“ End Sub 运行时,单击按钮数组中的第 1个按钮,则窗体标题显示为 ( )。 ( A) Form1 ( B) CornTest1 ( C) MyForm1 ( D) MyForm2 28 下列操作中不能向工程中添加窗体的是 ( )。 ( A)执行 “工程 ”菜单中的 “添加窗体 ”命令 ( B)单击工具栏上的 “添加窗体 ”按钮 ( C)右击窗体,在弹出的菜单中选择 “添加 窗体 ”命令 ( D)右击工
14、程资源管理器,在弹出的菜单中选择 “添加 ”命令,然后在下一级菜单中选择 “添加窗体 ”命令 29 下列有关过程的叙述中错误的是 ( )。 ( A)如果过程被定义为 Static类型,则该过程中的局部变量都是 Stmic类型 ( B) Sub过程中不能嵌套定义 Sub过程 ( C) Sub过程中可以嵌套调用 Sub过程 ( D)事件过程可以像通用过程一样由用户定义过程名 30 运行下面的程序,单击命令按钮,输出结果为 ( )。 Function F(a As Integer) b=0: Static c b=b+1: c=c+1: F=a+b+c End Function Private Su
15、b Command1_Click() Dim a As Integer a=2 For i=1To3 Print Fa) Next i End Sub ( A) 3 3 3 ( B) 3 4 5 ( C) 3 5 7 ( D) 3 6 9 31 以下程序在文本框 Text1中输入任一字符串,并按相反的次序显示在文本框Text2中,在横线处应填写 ( )。 Dim N As String, C As String, D As String N=Text1 Text M=_ For i=M To1Step-1 C=Mid(N, i, 1): D=D&C Next i Text2 Text=D En
16、d Sub ( A) Len(Text1 Text)-1 ( B) Text1 MaxLength ( C) Len(N)-1 ( D) Len(Text1 Text) 32 在属性窗口中把窗体的 KeyPreview属性设置为 True,然后编写如下两个事件过程: Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) Print Chr(KeyCode) End Sub Private Sub Form_KeyPress(KeyAscii AsInteger) Print Chr(KeyAscii) End Sub 在一
17、般情况下 (即不按住 Shift键和锁定大写 ),运行程序,如果按 “A”键,则程序输出的是 ( )。 ( A) A a ( B) a A ( C) A A ( D) a a 33 关于 MDI窗体下列说法正确的是 ( )。 ( A) 一个应用程序可以有多个 MDI窗体 ( B)子窗体可以移到 MDI窗体以外 ( C)不可以在 MDI窗体上放置按钮控件 ( D) MDI窗体的子窗体不可拥有菜单 34 为了实现鼠标自动拖放,必须把 ( )属性设置为 1:而为了执行手动拖放,必须把该属性设置为 0。 ( A) DrawStyle ( B) DrawMode ( C) DragMode ( D) D
18、rawWidth 35 窗体上有文本框 Text1和一个菜单,菜单标题、名称见表,结构如图所示。要求程序执行时单击 “保存 ”菜单项,则把其标题显示在 Text1文本 框中,下面可实现此功能的事件过程是 ( )。 ( A) Private Sub save Click() Save Click() Text1 Text=file save Caption End Sub ( B) Private Sub save Click() Text1 Text=save Caption End Sub ( C) Private Sub file Click() Text1 Text=file save
19、Caption End Sub ( D) Private Sub file Click() Text1 Text=save Caption End Sub 36 在利用菜单编辑器设计菜单时,为了把组合键 Alt+O设置为 “打开 (O)”菜单项的访问键,可以将该菜单项的标题设置为 ( )。 ( A)打开 (O&) ( B)打开 (O#) ( C)打开 (&O) ( D)打开 (#O) 37 若在窗体模块的声明部分声明了如下自定义类型和数组 Private Type Tem Score As Integer StrName As String End Type Dim Student(5)As
20、Tem 则下面的输出语句中正确的是 ( )。 ( A) Print Student Score(2), Student StrName(2) ( B) PrintStudent Score Student StrName ( C) Print Student(2) Score, Student(2) StrName ( D) Print Score(2), StrName(2) 38 窗体上有两个名称分别为 Text1、 Text2的文本框,一个名称为 Command1的命令按钮。设有如下的类型声明: Type Person name As String*8 major As String*2
21、0 End Type 当单击命令按钮时,将两个文本框中的内容写入一个随机文件 Test dat中。设文本框中的数据己正确地赋值给 Person类型的变量 P。则能够正确地把数据写入文件的程序段是 ( )。 ( A) Open“c: Test dat“For Random As#1 Put#1, 1, p Close#1 ( B) Open“c: Test dat“For Random As#1 Get#1, 1, p Close#1 ( C) Open“c: Test dat“For Random As#1Len =Len(p) Put#1, 1, p Close#1 ( D) Open“c:
22、 Test dat“For Random As#1Len =Len(p) Get#1, 1, p Close#1 39 函数过程 F1的功能是:如果参数 a为奇数,则返回值为 1,否则返回值为 0。以下能正确实现所述功能的代码的是 ( )。 ( A) Function F1(a As Integer) Ifa Mod2=0Then Return0 Else Returu1 End If End Function ( B) Function F1(a As Integer) Ifa Mod2=0Then F1=0 Else F1=1 End If End Function ( C) Functi
23、on F1(a As Integer) Ifa Mod2=0Then F1=1 Else F1=0 End If End Function ( D) Function F1(a As Integer) Ifa Mod2 0Then Return0 Else Return1 End If End Function 40 下面程序计算并输出的是 ( )。 Private Sub Command1_Click() Num=10: Sum=0 Do Sum=Sum+Num*Num*Num Num=Num-1 Loop Until Num =0 Print Sum End Sub ( A) 13+23+
24、33+10 3的值 ( B) 10!+3!+2!+1! 的值 ( C) (1+2+3+10) 3的值 ( D) 10个 103的和 二、基本操作题 41 请根据以下各小题的要求设计 Visual Basic应用程序 (包括界面和代码 )。 (1)在名称为 Form1,标题为 “矩形与直线 ”的窗体上画一个名称为 Line1的直线,其 X1、Y1属性分别为 200、 100, X2、 Y2属性分别为 2200, 1600。再画一个名称为Shape1的矩形,并设置适当属性,使 Line1成为它的对角线,如图 319所示。注意:存盘时,将文件保存至考生文件夹下,窗体文件名为 sjt1 frm,工程文
25、件名为 sjt1 vbp。 (2)在名称为 Form1,标题为 “列表框练习 ”的窗体上,画一个名称为List1的列表框,并输入若干列表项,再画一个标题为 “删除 ”,名称为 Command1的命令按钮,如图 320所示。请编写适当的事件过程,使得单击 “删除 ”按钮,就删除选中的列表项;双击某个列表项,则把该列表项内容添加到列表的最后。注意:存盘时,将文件保存至考生文件夹下,窗体文件名为 sjt2 frm,工程文件名为 sjt2 vbp。要求程序中不得使用变量,每个事件过程中只能写一条语句。三、简单应用题 42 (1)考生文件夹下的工程文件 sjt3 vbp中有 2个标题分别是 “产生范文
26、”和 “结束 ”的命令按钮; 2个名称分别为 Text1和 Text2,初始值为空的文本框 。请再画 1个名称为 Label3、标题为 “正确率 ”的标签,画 1个名称为 Text3、初始内容为空的文本框。效果如图 316所示。程序功能如下: 1)单击 “产生范文 ”命令按钮,则在Text1文本框中随机产生由 20个字母组成的范文。 2)用户可以在 Text2文本框中依照范文输入相应字母,当输入字母达到 20个之后,禁止向 Text2输入内容,且在Text3文本框中显示输入的正确率。 3)单击 “结束 ”命令按钮,则结束程序运行。请将 “产生范文 ”命令按钮的 Click事件过程,以及 Tex
27、t2文本框的 KeyPress事件过程中的注释符 去掉,把 “?”改为正确内容,以实现上述程序功能。注意:考生不得修改窗体文件中已经存在的控件和程序。最后,程序按原文件名存盘。(2)考生文件夹下的工程文件 sjt4 vbp中已经定义了一个学生记录类型数据 StudType。有 3个标题分别为 “准考证号 ”“姓名 ”和“总分 ”的标签; 3个初始内容为空,用于接收准考证号、姓名和总分的文本框Text1、 Text2和 Text3; 1个用于显示提示信息的标签 Label4。请再画 1个含有 3个命令按钮的控件数组,其名称为 Cmd1,标题分别是 “添加 ”“最高 ”和 “结束 ”。效果如图 3
28、17所示。 程序功能如下: 1)单击 “添加 ”按钮,则 将 Text1、 Text2和 Text3文本框中输入的准考证号、姓名和总分等学生信息存入自定义的学生记录类型数组 stu中,同时在 Label4中显示已输入的学生人数。最多只能输入 50个学生信息。 2)单击 “最高 ”按钮,则在 3个文本框中显示“总分 ”最高的学生记录,同时在 Label4中显示该记录的位置。请将命令按钮控件数组 Cmd1的 Click事件过程中的注释符去掉,把 “?”改为正确的内容,以实现上述程序功能。注意:考生不得修改窗体文件中已经存在的控件和程序,最后,程序按原文件名存盘。 四、综合应用题 43 在考生 目录
29、下有一个工程文件 sjt5 vbp。运行程序后,单击 “读数据 ”按钮,从data5 dat文件中读出一个数据,并显示在标签 Label1中;单击 “找素数 ”按钮,则在大于 Label1的数据范围内找出最小的素数,并将其显示在标签 Label2中。 在给出的窗体文件中已经有了全部控件,并给出了读写文件和判断素数的程序代码。但程序不完整。 要求:去掉程序中的注释符,把程序中的 “?”改为正确的内容,并编写相应程序段,实现程序功能。 注意:不能修改程序的其他部分和控件属性。最后把修改后的文件按原文件名存盘。程序调试通过后, 各命令按钮的事件过程必须至少各执行一次。 国家二级( VB)机试模拟试卷
30、 157答案与解析 一、选择题 1 【正确答案】 D 【试题解析】 算法的空间复杂度是指执行这个算法所需要的内存空间。一个算法所占用的存储空间包括算法程序所占的空间、输入的初始数据所占的存储空间以及算法执行中所需要的额外空间。其中额外空间包括算法程序执行过程中的工作单元以及某种数据结构所需要的附加存储空间。如果额外空间量相对于问题规模来说是常数,则称该算法是原地工作的。在许多实际问题中,为了减少算法所占的存储空间,通常采用压缩 存储技术,以便尽量减少不必要的额外空间。 2 【正确答案】 D 【试题解析】 数据的存储结构是指数据的逻辑结构在计算机存储空间中的存放形式,一种数据结构可以根据需要采用
31、不同的存储结构,常用的存储结构有顺序和链式结构。采用不同的存储结构,其处理的效率是不同的。 3 【正确答案】 D 【试题解析】 类是对一类具有相同的属性和方法对象的描述,属性用于描述对象的状态,方法用于表示对象的行为,基于同一个类产生的两个对象是可以分别设置自己的属性值的。 4 【正确答案】 D 【试题解析】 需 求分析的最终结果是生成软件需求规格说明书,可以为用户、分析人员和设计人员之间的交流提供方便。 5 【正确答案】 D 【试题解析】 数据库设计目前一般采用生命周期法,即将整个数据库应用系统的开分解成目标独立的若干阶段,它们是:需要分析阶段、概念设计阶段、逻辑设计阶段、物理设计阶段、编码
32、阶段、测试阶段、运行阶段、进一步修改阶段。在数据库设计中采用上面几个阶段中的前四个阶段,并且重点以数据结构和模型设计为主线。 6 【正确答案】 B 【试题解析】 关系 R与 S经交运算后所得到的关系是由那些既在 R内又在 S内的有序组所组成,记为 RnS,交运算不改变关系表中的属性个数但能减少元组个数。 7 【正确答案】 A 【试题解析】 软件的运行和维护是指将已交付的软件投入运行,并在运行使用中不断地维护,根据新提出的需求进行必要而且可能的扩充和删改。而软件生命周期是指软件产品从提出、实现、使用维护到停止使用退役的过程。 8 【正确答案】 B 【试题解析】 在具有 n个结点的满二叉树,其非叶
33、子结点数为 int(n 2),而叶子结点数等于总结点数减去非叶子结点数。本题 n=15,故非叶子结点数等于int(15 2)=7,叶子结点数等于 15-7=8。 9 【正确答案】 C 【试题解析】 R为 n元关系,有 p个元组, S为 m元关系,有 q个元组。两个关系笛卡儿积是一个 n+m元的关系,元组个数是 qp。所以 T的元组的个数为 9个。 10 【正确答案】 D 【试题解析】 数据库管理一般包括:数据库的建立、数据库的调整、数据库的重组、数据库的安全性控制与完整性控制、数据库的故障恢复和数据库的监控。 11 【正确答案】 C 【试题解析】 Sgn函数是判断输入参数正负的函数,返回表示数
34、字符号的整数。Sgn(number)函数中的 number参数可以是任意有效的数值表达式。如果 number大于零则返回 1、等于零则返回 0、小于零则返回 -1,题中 Sgn(-62)结果为 -1。Abs函数是求表达式绝对值,其函数格式为: Abs(数值表达式 ), Abs函数返回值类型与数值表达式的数据类型相同,题中 Abs(-6 2)结果为 36。 Int函数的返回值类型为 int型的数据,题中 Int(-6 2)结果为 -36。因此最后的结果是 -1。 12 【正确答案】 D 【试题解析】 本题考查窗体一些常见的事件。 VB为事件驱动 的编程方式,程序运行的第 1个事件为 Initia
35、lize事件,接下来为装入窗体 Load事件,这两个事件不需要用户来触发。 13 【正确答案】 C 【试题解析】 本题考查变量的作用域。局部变量是在过程内用声明的变量,只能在本过程中使用,不同过程中的局部变量可以重名,由 Dim或者 Private声明的局部变量在过程调用前才会被初始化为 0或空字符串,静态局部变量不会被初始化为 0或空字符串;在 “通用声明 ”段中用 Public语句声明的变量为全局变量,可被本应用程序的任何过程或函数访问。 14 【正确答案】 B 【试题解析】 本题考查变量命名规则。 VB中变量的命名应遵循以下规则:只能由字母、数字和下划线组成;第一个字符必须是英文字母;有
36、效字符为 255个;不能用关键字做变量名。 15 【正确答案】 B 【试题解析】 本题考查字符串处理函数。字符串函数 Left以及 Right表示从主串的左边或者右边开始取连续个字符构成子串,函数有两个参数,第一个参数为字符串,第二个参数为整数。而 Mid函数表示从主串中的某个字符开始连续取若干个字符构成子串。 16 【正确答案】 B 【试题解析】 本题考查输入 框。在 lnputBox函数中,第一个参数是提示信息,第二个参数是对话框的标题,第三个参数是输入的默认值,最终产生的返回值是用户输入的字符串类型的值。 17 【正确答案】 A 【试题解析】 本题考查文本框的常见属性。 ForeColo
37、r为前景颜色属性:设置控件的前景颜色 (即正文颜色 ),其值是一个 16进制常数,用户也可以在调色板中直接选择所需颜色; BackColor为背景颜色属性; FillColor设置封闭图形的填充颜色; BackStyle是背景样式属性。 18 【正确答案】 D 【试题解析】 框架 (Frame) 是一个容器控件,用于将屏幕上的对象分组,单选按钮 (OptionButton)组用于提供多个选项间的唯 选择,因此若要使得每组中都有一个按钮被选中,需要将其使用框架分组。 19 【正确答案】 C 【试题解析】 本题考查组合框。可以通过 AddItem方法给组合框添加列表项。 20 【正确答案】 D 【
38、试题解析】 本题考查常见控件的基本特点。滚动条的重要事件是 Change和Scroll,框架的主要作用是将控件进行分组;使用组合框时既可以输入,也可以从列表中选择;计时器控件 没有 Visible属性,程序运行期间一直不显示。 21 【正确答案】 B 【试题解析】 本题考查 IIf函数。 IIf函数可用于执行简单的条件判断操作,其格式为: result=IIf(条件, Tree部分, False部分 ),其中 “result”是函数的返回值, “条件 ”是一个逻辑表达式。当 “条件 ”为真时, IIf函数返回 “Tree部分 ”的值,而当 “条件 ”为假时返回 “False部分 ”的值。 “T
39、rue部分 ”或 “False部分 ”可以是表达式、变量或其他函数。本题中由于 (a b)And(c d)的结果为 假,所以 x的值为 20。 22 【正确答案】 B 【试题解析】 本题考查累加算法。题目中 sum为求和项,初值为 0, t为每一项的值,变化规律为后一项是前一项的 i倍, i的变化为从 1到 3,由于 t的初值为1,因此求和为 1*1+1*2+2*3。 23 【正确答案】 C 【试题解析】 题中第一个循环功能是给数组 a赋值,即 a(1)=1、 a(2)=2 :第二个循环功能是给数组 p赋值,即 p(1)=1、 p(2)=4、 p(3)=9;第三个循环是求 K的值,即是将 K值
40、加上数组 P所有元素的值,所以K=K+p(1)*2+p(2)*2+p(3)*2=33。 24 【正确答案】 B 【试题解析】 本题考查文本框的常见事件。文本框中常见的事件主要有:当改变文本框的 Text属性时会触发 Change事件;当在文本框中输入时触发 KeyPress事件,并可返回一个 KeyAscii参数;当控件失去焦点时触发 LostFocus事件:当控件获得焦点时触发 GotFocus事件。 25 【正确答案】 A 【试题解析】 本题考查 Array函数。利用 Array对数组各元素赋值,声明的数组必须是可变数组,并且其类型只能是 Variant。也可以对数组进行赋值,但是赋值号左
41、边的数组只能声明为 Variant的可变数组或简单变量,同时数组必须有存储空间。 26 【正确答案】 D 【试题解析】 本题考查累加运算。 s为求和项, a(i)*j为每一项, j的变化为 4到1, j的变化为 10的倍数。因此求和 s为: 4*1+3*10+2*100+1*1000,结果为1234。 27 【正确答案】 D 【试题解析】 本题考查控件数组。建立控件数组以后,数组中的每个元素依靠Index属性来区分,名称相同。题目中程序运行时,不要单击哪个命令按钮, 窗体的标题部会改成 “Myform2”。 28 【正确答案】 C 【试题解析】 向工程中添加窗体的方法有: 执行 “工程 ”菜单
42、中的 “添加窗体 ”命令; 单击工具栏上的 “添加窗体 ”按钮: 右击工程资源管理器,在弹出的菜单中选择 “添加 ”命令,然后在下一级菜单中选择 “添加窗体 ”命令。 29 【正确答案】 D 【试题解析】 本题考查过程。一般在 VB中控件本身的事件过程名称为 “控件名事件 ”,另外还可以自定义过程,主要有 Sub子过程和 Function函数过程,过程可以嵌套调用,但不可以嵌套定义。静态过程中 所有的局部变量默认为静态变量。 30 【正确答案】 B 【试题解析】 本题考杏变量。局部变量如果使用 Dim声明,随过程的调用而分配存储单元,每次调用都对变量初始化,过程体结束,变量的内容自动消失,并释
43、放存贮单元:如果使用 Static声明,则每次调用过程,变量保持原来的值。本题在 F函数被调用 3次的过程中,变量 c每次都保留前一次的值,而 b则每次调用都初始化为 0。 31 【正确答案】 D 【试题解析】 本题考查字符串的逆序。取得 Text1中文本的长度,M=Len(Text1 Text),循环中 对字符串从后往前一次读出字符串的每一个宁符,连接到 D中。 32 【正确答案】 A 【试题解析】 本题考畲键盘事件。 KeyPreview属性用于设置是否在控件的键盘事件之前激活窗体的键盘事件。 KeyPress(KeyAscii As Integer)事件是在对象具有焦点时,按下键盘上的键
44、时触发的事件,其中的 KeyAscii参数是所按键的 ASCII的代码,每个字符的大、小写形式都是不同的键代码。而 Chr()可返回 ASCII码对应的字符。 KeyDown(KeyCode As Integer, Shift as Integer)事件有两个参数,其中, KeyCode参数是表示所按键的位置信息的代码,只要按下键,就返回该键的位置信息,不区分大小写,一律作为人写字符解释。本题的功能为输入 A时,KeyDown事件输出大写字符 A,而 KeyPress事件则输出小写字符 a。 33 【正确答案】 C 【试题解析】 本题考查 MDI窗体。一个应用程序仅可以拥有一个 MDI窗体,可
45、以有多个子窗体,所有的子窗体必须在父窗体之内显示,在父窗体界面上可以放置菜单、工具栏或图片框,但是不允许放置命令按钮。 34 【正确答案】 C 【试题解析】 本题考查拖放事件。要完成控件的拖放,首先设置 DragMode属性,值为 0: (缺省 ),表示手工拖动模式,值为 1:表示自动拖动模式。 35 【正确答案】 B 【试题解析】 本题考查菜单事件。菜单建立以后,对于每个菜单项要进行编写程序,才可以进行处理,单击 “保存 ”命令时,代码窗体自动出现事件过程: Private Sub save_Click() End Sub 在程序之间加上 Text1的 Text属性改变代码即可。 36 【正
46、确答案】 C 【试题解析】 访问键就是菜单项 中加了下划线的字母,只要同时按下 Alt键和加了下划线的字母键,就可以选择相应的菜单项。快捷键和访问键都是在设计菜单时直接指定。设置访问键时,必须在要设置为访问键的字母前面加上一个功能符 “&”。 37 【正确答案】 C 【试题解析】 在标准模块中可以声明自定义类型,该类型由 Type关键字声明,在声明中要定义类型的所有域。若用自定义类型声明一个变量,则该变量拥有若干域,取得每个域的值需要用 “变量名域名 ”的形式。作为一个自定义类型的数组,首先要取出某个数组元素然后才能访问该元素的某个域,所以要想访 问Student(2)的域,需要使用 Stud
47、ent(2) Score和 Student(2) StrName。 38 【正确答案】 C 【试题解析】 本题考查随机文件读写。以 Random打开随机文件的格式为:Open文件名 For RandomAs#文件号 Len=记录长度 ,该语句可以进行读写操作,写操作格式为: Put#文件号, 记录号 ,变量名,可以将一个记录变量的内容写到指定的记录位置处,如果忽略记录号,则表示在当前记录后的位置插入一条记录。读操作格式为: Get#文件号, 记录号 ,变量名, 如果忽略记录号,则读出当前记录后面的那一条记录。 39 【正确答案】 B 【试题解析】 本题考查程序的基本算法。定义函数过程时,要求计
48、算结束以后,把函数的返回值存放在过程名中,返回给调用函数。题目中 a为奇数,条件为 a Mod2=0时,返同 0,否则返回 1。 40 【正确答案】 A 【试题解析】 对于 Do型循环结构,首先看条件判断在循环体的前面还是后面,如果是先判断条件,则有可能一次也不执行循环体;如果是后判断条件,则无论条件是什么,至少执行一次循环体。在 Until循环中条件为 False时执 行循环体,条件为 True时退出循环;在 While循环中条件为 True时执行循环体,条件为False时退出循环。本题是一个比较简单的 Do循环,计算从 1到 10的立方和。 二、基本操作题 41 【正确答案】 第 1小题步
49、骤 1:新建一个 “标准 EXE”工程,在窗体 Form1中加入一个 Shape形状和直线。按表 413设置其相关属性。步骤 2:按要求将文件保存至考生文件夹中。第 2小题步骤 1:新建一个 “标准 EXE”工程,在窗体 Form1中加入一个命令按钮和列表框。按表 414设置其相关属性。步骤 2:在打开的代码编辑窗口中,编写命令按钮的 Click事件和列表框的双击 DblClick事件代码。参考代码:Private Sub Command1_Click()List1 RemoveItem List1 ListIndexEnd SubPrivate Sub List1_DblClick()List1 AddItemList1 TextEndSub步骤 3:按要求将文件保存至考生文件夹中。 【试题解析】 第 1小题:根据题目要求,在窗体上放置一个 Shape形状和一条直线,并将直线设置为 Shape矩形的对角线,即矩形 的 Left、 To