1、二级 VISUAL+BASIC 笔试 71 及答案解析(总分:92.00,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:70.00)1.下列语句正确的是(分数:2.00)A.IfX3*Y And XY Then Y=X3B.IfX3*Y And XY Then Y=X3C.IfX3*Y:XY Then Y=X3D.IfX3*Y And XY Then Y=X*32.当改变目录列表框控件 Dir1 中的当前目录时,希望同步改变文件列表框 File1 中显示的文件,在Dir1_Change 事件过程中使用的命令是(分数:2.00)A.File1.Path=DiPathB.Dir1.P
2、ath=File1.PathC.File1.Path=Dir1.DriveD.Dir1.Drive=File1.Path3.用某种排序方法对序列(25,84,21,47,15,27,68,35,20)进行排序,记录序列的变化情况如下: 15, 20, 21, 25, 47, 27, 68, 35, 84 15, 20, 21, 25, 35, 27, 47, 68, 84 15, 20, 21, 25, 27, 35, 47, 68, 84 则采取的排序方法是(分数:2.00)A.直接选择排序B.冒泡排序C.快速排序D.希尔排序4.在窗体上画了两个按钮控件 Command1 和 Command
3、2,有如下程序: Private Sub Command1_Click() Print “Visual“; End Sub Private Sub Command2_Click() Print “Basic“; End Sub Private Sub Form_Load() Command2.Cancel=True Command1.Cancel=True End Sub 执行程序后,按键盘 Cancel 键,在窗体上输出的结果是(分数:2.00)A.BasicB.VisualC.CancelD.True5.以下关于变量作用域的叙述中,正确的是(分数:2.00)A.窗体中凡被声明为 Priva
4、te 的变量只能在某个指定的过程中使用B.全局变量必须在标准模块中声明C.模块级变量只能用 Private 关键字声明D.Static 类型变量的作用域是它所在的窗体或模块文件6.在窗体上画一个名称为 Command1 的命令按钮,然后编写如下事件过程: Private Sub Command1_Click () Dim a As Integer, b As Integer, c As Integer a = 1: b = 2: c = 3 Print fun2 (c, b, A) End Sub Private Function funl (x As Integer, y As Intege
5、r, z As Integer) fun1 = 2 * x + y + 3 * z End Function Private Function fun2(x As Integer, y As Integer, z As Integer) fun2 = fun1(z, x, y)+ x End Function 程序运行后,单击命令按钮,则窗体上显示的内容是(分数:2.00)A.7B.14C.17D.307.Visual Basic 集成开发环境有 3 种工作状态,不属于 3 种工作状态之一的是(分数:2.00)A.设计状态B.编写代码状态C.运行状态D.中断状态8.数据结构中,与所使用的计算机
6、无关的是数据的(分数:2.00)A.存储结构B.物理结构C.逻辑结构D.物理和存储结构9.当窗体最小化时缩小为一个图标,设置这个图标的属性是(分数:2.00)A.MouseIconB.IconC.PictureD.MousePointer10.栈和队列的共同点是(分数:2.00)A.都是先进先出B.都是先进后出C.只允许在端点处插入和删除元素D.没有共同点11.运行以下程序后,输出的结果是 for i=1 to 3 cls print“ i=“,i; Next(分数:2.00)A.123B.3C.i=1i=2i=3D.i=312.要想不使用 Shift 或 Ctrl 键就能在列表框中同时选择多
7、个项目,则应将该列表框的 MultiSelect 属性设置为(分数:2.00)A.0B.1C.2D.其他13.决定窗体标题栏上显示内容的属性是(分数:2.00)A.TextB.NameC.CaptionD.BackStyle14.为了获得当前未被使用的文件号,可以利用 Visual Basic 提供的 _ 函数来实现。(分数:2.00)A.FreeFileB.OpenC.InputD.Path15.在窗体上画一个名称为 Text1 的文本框和一个名称为 Command1 的命令按钮,然后编写如下事件过程: Private Sub Command1_Click() Dim iAsInteger,
8、n As Integer For i=0 To 50 i=i+3 n=n+1 If i10 Then Exit For Next Text1.Text=Str(n) End Sub 程序运行后,单击命令按钮,在文本框中显示的值是(分数:2.00)A.2B.3C.4D.516.以下关于图片框控件的说法中,错误的是(分数:2.00)A.可以通过 Print 方法在图片框中输出文本B.清空图片框控件中图形的方法之一是加载一个空图形C.图片框控件可以作为容器使用D.用 Stretch 属性可以自动调整图片框中图形的大小17.在设计程序时,应采纳的原则之一是(分数:2.00)A.程序结构应有助于读者理解
9、B.不限制 goto 语句的使用C.减少或取消注解行D.程序越短越好18.在窗体上画一个名称为 Command1 的命令按钮和一个名称为 List1 的列表框。如下图所示程序的功能是:单击命令按钮后,程序用“筛选法”求出 1-100 之间的全部素数。并将素数在列表框中显示出来。根据题意,填空处应选择 (分数:2.00)A.List1.Text=Str(a()+ vbCrLfB.List1.Text=Str(a()+ vbCrLfC.List1.AddItem a(D.List1.AddItem=a(19.为使标题栏上的这两个按钮消失,而保留其他按钮,没置窗体属性时,正确的是(分数:2.00)A
10、.ControlBox=True、MaxButton=False、MinButton=TrueB.ControlBox=False、MaxButton=True、MinButton=TrueC.ControlBox=True、MaxButton=False、MinButton=FalseD.ControlBox=False、MaxButton=False、MinButton=False20.下列语句用来设置窗体 Form1 的属性,其中在运行时不能正确操作的语句是(分数:2.00)A.Form1.Capfin=“Form Test“B.ForName=“Form Test“C.Form1.Ma
11、xButton=FalseD.Form1.MinButton=False21.窗体是 Visual Basic 中的对象,具有自己的属性、方法和(分数:2.00)A.控件B.函数C.事件D.公用过程22.以下能够触发文本框 Change 事件的操作是(分数:2.00)A.文本框失去焦点B.文本框获得焦点C.当文本框不可用时D.改变文本框的内容23.在软件生命周期中,能准确确定软件系统必须做什么和必须具备的功能的阶段是(分数:2.00)A.概要设计B.详细设计C.可行性分析D.需求分析24.对于如下图所示的二叉树,其后序遍历序列是 (分数:2.00)A.ABDECFGB.DEBAFCGC.DEB
12、FGCAD.GFCEBDA25.阅读如下程序: Private Sub Form_Click() Dim num As Integer,digit As Integer num=InputBox(“输入数据“) Do While num 0 digit=num Mod 10 num=num/10 Print digit; Loop End Sub 程序运行后,如果从键盘上输入 12345,则输出的结果为(分数:2.00)A.1 3 7 5 9B.5 4 3 2 1C.2 4 6 8 10D.1 2 3 4 526.Randomize 语句的功能是(分数:2.00)A.产生一个(0,1)之间的随
13、机小数B.产生一个1,10之间的随机整数C.产生一个(-1,1)之间的随机小数D.产生新的随机整数27.运行下列程序: Private Sub Form Click() Sum=0 For i=1 To 100 If Mid(CStr(i),1, 1)=“1“ Then Sum=Sum+1 End If Next i Print Sum End Sub 单击窗体后,在窗体上显示的结果是(分数:2.00)A.12B.13C.14D.1528.在数据库的三级模式结构中,外模式有(分数:2.00)A.1 个B.2 个C.3 个D.任意多个29.对长度为 n 的有序单链表,若搜索每个元素的概率相等,则
14、顺序搜索到表中任一元素的平均搜索长度为(分数:2.00)A.n/2B.(n+1)/2C.(n-1)/2D.n/430.以下测试方法是白盒测试法的是(分数:2.00)A.判定覆盖和边界值分析法B.等价类划分和错误推测法C.路径覆盖和判定/条件覆盖法D.条件覆盖和错误推测法31.在窗体上画一个命令按钮(名称为 Command1),然后编写如下事件过程: Private Sub Command1_Click() a=4:b=5:c:6 Print a=b+c End Sub 程序运行后,单击命令按钮,其结果为(分数:2.00)A.a=11B.a=b+cC.FalseD.出错32.设有如下变量声明:
15、Dim TestDate AS Date 为变量 TestDate 正确赋值的表达方式是(分数:2.00)A.TestDate=#1/1/2002#B.TestDate=#“1/1/2002“#C.TestDate=Date(“1/1/2002“)D.TestDate=Format(m/d/yy,“1/1/2002“)33.在窗体上画一个名称为 Command1 的命令按钮,然后编写如下事件过程: Private Sub Command1_Click() x=5 : y=2 Call sub1(x),y) Print x;y End Sub Private Sub sub1(m,n) t=m
16、: m=n : n=t End Sub 程序运行后,单击命令按钮,则窗体上显示的内容是(分数:2.00)A.2 5B.5 4C.1 4D.5 534.设关系 R 和 S 的元组个数分别为 100 和 300,关系 T 是 R 与 S 的笛卡儿积,则 T 的元组个数是(分数:2.00)A.400B.10000C.30000D.9000035.如果将 PasswordChar 属性设置为一个字符,如星号(*),运行时,在文本框中输入的字符仍然会显示出来,而不显示星号,原因可能是(分数:2.00)A.文本框的 MultiLine 属性值为 TrueB.文本框的 Locked 属性值为 TrueC.文
17、本框的 MultiLine 属性值为 FalseD.文本框的 Locked 属性值为 False二、B填空题/B(总题数:11,分数:22.00)36.线性表是最简单的一种数据结构,有顺序和链接两种存储方式。线性表按链接方式存储时,对每个结点的存储包括U 【1】 /U两部分。(分数:2.00)填空项 1:_37.具有 88 个结点的二叉树,其深度至少为U 【2】 /U。(分数:2.00)填空项 1:_38.在面向对象程序设计中,从外面看只能看到对象的外部特征,而不知道也无需知道数据的具体结构以及实现操作的算法,这称为对象的U 【3】 /U。(分数:2.00)填空项 1:_39.概要设计说明书是
18、软件U 【4】 /U阶段的主要成果。(分数:2.00)填空项 1:_40.RS 用基本的关系代数运算可以表示为U 【5】 /U。(分数:2.00)填空项 1:_41.Visual Basic6.0 的集成开发环境有两种方式,第一种方式是U 【6】 /U,第二种方式是U【7】 /U。(分数:2.00)填空项 1:_42.在 Visual Basic 中,当改变目录列表框的 Path 属性值时,改变了当前驱动器的U 【8】 /U。(分数:2.00)填空项 1:_43.在窗体上画一个文本框和一个命令按钮,如下图所示。 (分数:2.00)填空项 1:_44.为了使一个标签透明且没有边框,必须将它的U
19、【11】 /U属性设置为 0,并将 BackStyle 属性设置为 0。(分数:2.00)填空项 1:_45.在窗体上画一个列表框、一个命令按钮和一个标签。程序运行后,在列表框中选择一个项目,然后单击命令按钮,即可将所选择的项目删除,并在标签中显示列表框当前的项目数。 下面是实现上述功能的程序,请填空。 Private Sub Form_Load() List1.AddItem “AAAAA“ List1.AddItem “BBBBB“ List1.AddItem “CCCCC“ List1.AddItem “DDDDD“ End Sub Private Sub Command1_Click(
20、) Dim L1 As Integer L1=U 【12】 /U If L1 =0 Then List1.RemoveItemU 【13】 /U Labell.Caption=U 【14】 /U Else MsgBox(“请选择要删除的项目“) End If End Sub(分数:2.00)填空项 1:_46.以下程序的功能是在程序运行后,单击命令按钮,输出如下结果: 1 4 7 2 5 8 3 6 9 请完善以下程序。 Private Sub Command1_Click() Dim Arr(3,3)As Integer For i=1 To 3 For j=1 To 3 Arr(i,j)=
21、U 【15】 /U Print Arr(i,j); Next j Print NeXt i End Sub(分数:2.00)填空项 1:_二级 VISUAL+BASIC 笔试 71 答案解析(总分:92.00,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:70.00)1.下列语句正确的是(分数:2.00)A.IfX3*Y And XY Then Y=X3 B.IfX3*Y And XY Then Y=X3C.IfX3*Y:XY Then Y=X3D.IfX3*Y And XY Then Y=X*3解析:分析 单行 If 语句的用法是 If.Then,本题题意在于考察条件表达式的书
22、写,其中 B、C、 D均为不规范写法,正确答案足选项 A。2.当改变目录列表框控件 Dir1 中的当前目录时,希望同步改变文件列表框 File1 中显示的文件,在Dir1_Change 事件过程中使用的命令是(分数:2.00)A.File1.Path=DiPath B.Dir1.Path=File1.PathC.File1.Path=Dir1.DriveD.Dir1.Drive=File1.Path解析:分析 在 Dir1_Change 事件过程中使窗体上的目录列表框 Dir1 和文件列表框 File1 产生同步。因为目录列表框 Path 属性的改变将产生 Change 事件,所以在 Dirl
23、 Change 事件过程中,将赋给File1.Path,就可以产生同步效果。3.用某种排序方法对序列(25,84,21,47,15,27,68,35,20)进行排序,记录序列的变化情况如下: 15, 20, 21, 25, 47, 27, 68, 35, 84 15, 20, 21, 25, 35, 27, 47, 68, 84 15, 20, 21, 25, 27, 35, 47, 68, 84 则采取的排序方法是(分数:2.00)A.直接选择排序B.冒泡排序C.快速排序 D.希尔排序解析:分析 快速排序的基本思想是:通过一趟排序将待排序记录分割成独立的两部分,其中一部分记录的关键字均比另一
24、部分记录的关键字小,再分别对这两部分记录继续进行排序,以达到整个序列有序。从上述序列变化情况可以看出,该题采用的是快速排序法。4.在窗体上画了两个按钮控件 Command1 和 Command2,有如下程序: Private Sub Command1_Click() Print “Visual“; End Sub Private Sub Command2_Click() Print “Basic“; End Sub Private Sub Form_Load() Command2.Cancel=True Command1.Cancel=True End Sub 执行程序后,按键盘 Cancel
25、 键,在窗体上输出的结果是(分数:2.00)A.BasicB.Visual C.CancelD.True解析:分析 窗体中只能有一个 CommandButton 控件为取消按钮。当一个 CommandButton 控件的 Cancel属性被设置为 Tree 时,窗体中其他 CommandButton 控件的 Cancel 属性自动地被设置为 False。当CommandButton 控件的 Cancel 属性被设置为 True,而且当前窗体处于活动状态时,按 Cancel 键可以触发该按钮 Click 事件,而不管该控件是否获得焦点。本题开始时 Command2 的 Cancel 属性为,Tr
26、ue,但随后由于 Command1 的该属性变为 True,Command2 的 Cancel 属性变为 False,因此按 Cancel 键后执行 Command1_Click 过程。5.以下关于变量作用域的叙述中,正确的是(分数:2.00)A.窗体中凡被声明为 Private 的变量只能在某个指定的过程中使用B.全局变量必须在标准模块中声明 C.模块级变量只能用 Private 关键字声明D.Static 类型变量的作用域是它所在的窗体或模块文件解析:分析 全局变量可用于工程的每个模块、每个过程。全局变量必须用 Public(或 Global)语句声明,不能用 Dim 语句声明,更不能用
27、Private 语句声明,同时,全局变量只能在标准模块中声明,不能在过程或窗体模块中声明。6.在窗体上画一个名称为 Command1 的命令按钮,然后编写如下事件过程: Private Sub Command1_Click () Dim a As Integer, b As Integer, c As Integer a = 1: b = 2: c = 3 Print fun2 (c, b, A) End Sub Private Function funl (x As Integer, y As Integer, z As Integer) fun1 = 2 * x + y + 3 * z E
28、nd Function Private Function fun2(x As Integer, y As Integer, z As Integer) fun2 = fun1(z, x, y)+ x End Function 程序运行后,单击命令按钮,则窗体上显示的内容是(分数:2.00)A.7B.14 C.17D.30解析:分析 对于多个过程或函数依次调用的处理和简单过程调用处理一样,本题先调用函数 fun2,而函数 fun2 又调用函数 fun1,结果返回的顺序是从 fun1 到 fun2,fun2 计算后输出到调用的地方。只要注意函数的调用关系依次处理即可解决此类问题。7.Visual
29、Basic 集成开发环境有 3 种工作状态,不属于 3 种工作状态之一的是(分数:2.00)A.设计状态B.编写代码状态 C.运行状态D.中断状态解析:分析 在集成开发环境的标题栏左侧,显示了当前所打开的工程名称和状态,共有设计、运行和中断(Break)3 种工作状态。8.数据结构中,与所使用的计算机无关的是数据的(分数:2.00)A.存储结构B.物理结构C.逻辑结构 D.物理和存储结构解析:分析 数据结构概念一般包括 3 个方面的内容,数据的逻辑结构、存储结构(物理结构)及数据上的运算集合。数据的逻辑结构只抽象地反映数据元素之间的逻辑关系,即数据元素之间的前后件关系,而不管它在计算机中的存储
30、表示形式。9.当窗体最小化时缩小为一个图标,设置这个图标的属性是(分数:2.00)A.MouseIconB.Icon C.PictureD.MousePointer解析:分析 Icon 属性用来设置窗体最小化时的图标。通常将该属性设置为.ICO 格式的图标文件,当窗体最小化(Window State=1)时显示为图标。10.栈和队列的共同点是(分数:2.00)A.都是先进先出B.都是先进后出C.只允许在端点处插入和删除元素 D.没有共同点解析:分析 栈和队列都是一种特殊的操作受限的线性表,只允许在端点处进行插入和删除。二者的区别是:栈只允许在表的一端进行插入或删除操作,是一种“后进先出”(或“
31、先进后出”)的线性表:而队列只允许在表的一端进行插入操作,在另一端进行删除操作,是一种“先进先出”(或“后进后出”)的线性表。因此栈和队列的共同点是只允许在端点处插入和删除元素。11.运行以下程序后,输出的结果是 for i=1 to 3 cls print“ i=“,i; Next(分数:2.00)A.123B.3C.i=1i=2i=3D.i=3 解析:分析 cls 语句的功能是清除窗体或其他对象上的所有输出,因此,本题中开始输出的 i =1 和i=2 都被清除,只剩下 i=3。答案为选项 D。12.要想不使用 Shift 或 Ctrl 键就能在列表框中同时选择多个项目,则应将该列表框的 M
32、ultiSelect 属性设置为(分数:2.00)A.0B.1 C.2D.其他解析:分析 MultiSelect 属性用来设置一次可以选择的表项数。对于一个标准列表框,该属性的设置值决定了用户是否可以在列表框中选择多个表项。MultiSelect 属性可以设置成以下 3 种值:O-None 表示每次只能选择一项,如果选择另一项则会取消对前一项的选择; 1-Simple 表示可以同时选择多个项,后续的选择不会取消前面所选择的项,可以用鼠标或空格键选择:2-Extended 表示可以选择指定范围内的表项,其方法是:单击所要选择范围的第一项,然后按下 Shift 键,不要松开,并单击所要选择范围的最
33、后一项,可连续地选择多个表项,如果按住 Ctrl 键,并单击列表框中的项目,则可不连续地选择多个表项。13.决定窗体标题栏上显示内容的属性是(分数:2.00)A.TextB.NameC.Caption D.BackStyle解析:分析 Caption 属性用来定义窗体标题。启动 Visual Basic 或执行“工程”菜单中的“添加窗体”偷令后,窗体使用的是默认标题(如 Form1、 Form2)。用 Caption 属性可以将窗体标题改为所需要的名字。该属性既可通过属性窗口设置,也可以在事件过程中通过程序代码设置。14.为了获得当前未被使用的文件号,可以利用 Visual Basic 提供的
34、 _ 函数来实现。(分数:2.00)A.FreeFile B.OpenC.InputD.Path解析:分析 用 FreeFile 函数可以得到一个在程序中没有使用的文件号。当程序中打开的文件较多时,这个函数很有用。15.在窗体上画一个名称为 Text1 的文本框和一个名称为 Command1 的命令按钮,然后编写如下事件过程: Private Sub Command1_Click() Dim iAsInteger,n As Integer For i=0 To 50 i=i+3 n=n+1 If i10 Then Exit For Next Text1.Text=Str(n) End Sub
35、程序运行后,单击命令按钮,在文本框中显示的值是(分数:2.00)A.2B.3 C.4D.5解析:分析 Exit For 语句用来退出 For 循环。n 每次循环加 1,当 i 大于 10 的时候退出循环,第一次循环 i=3,n=1,然后 i 加 1 进入下一次循环,第二次循环的时候 i 就是 4+3=7 了,所以当第三次循环时i 是 8+3=11 满足 if 后的判断条件,执行 Exit,退出 For 循环。16.以下关于图片框控件的说法中,错误的是(分数:2.00)A.可以通过 Print 方法在图片框中输出文本B.清空图片框控件中图形的方法之一是加载一个空图形C.图片框控件可以作为容器使用
36、D.用 Stretch 属性可以自动调整图片框中图形的大小 解析:分析 AutoSize 属性用于 PictureBox(图片框),Stretch 属性只用于 Image(图像框)。当 AutoSize 属性值为 True(真)时,图片框会根据装入的图形大小进行调整,可以被认为“框随图片”;当Stretch 属性值为 True(真)时,图像框内的图形大小随框的大小而变化,可以被认为“图片随框”。17.在设计程序时,应采纳的原则之一是(分数:2.00)A.程序结构应有助于读者理解 B.不限制 goto 语句的使用C.减少或取消注解行D.程序越短越好解析:分析 程序设计的风格主要强调程序的简单、清
37、晰和可理解性,以便读者理解。因此选项 A 是正确答案。程序滥用 goto 语句将使程序流程无规律,可读性差:添加的注解行有利于对程序的理解,不应减少或取消;程序的长短要依照实际需要而定,并不是越短越好。因此选项 B、C、D 都是错误的。18.在窗体上画一个名称为 Command1 的命令按钮和一个名称为 List1 的列表框。如下图所示程序的功能是:单击命令按钮后,程序用“筛选法”求出 1-100 之间的全部素数。并将素数在列表框中显示出来。根据题意,填空处应选择 (分数:2.00)A.List1.Text=Str(a()+ vbCrLfB.List1.Text=Str(a()+ vbCrLf
38、C.List1.AddItem a( D.List1.AddItem=a(解析:分析 程序的功能是:先将其下标值作为数组的初值,然后,用 2 去除它后面的每个数,如能被整除,就将其值赋 0,再用 3、4.去除它后面的每个数,也是如能被整除,就将其值赋 0,数组剩下的非 0 值就是素数。最后将其素数在 List1 列表框中显示出来。注意此题中的数组 a 是公共变量。向列表框添加内容时,选项 C 是正确的。19.为使标题栏上的这两个按钮消失,而保留其他按钮,没置窗体属性时,正确的是(分数:2.00)A.ControlBox=True、MaxButton=False、MinButton=TrueB.
39、ControlBox=False、MaxButton=True、MinButton=TrueC.ControlBox=True、MaxButton=False、MinButton=False D.ControlBox=False、MaxButton=False、MinButton=False解析:分析 ControlBox、MaxBuRon 和 MinButton 属性都影响窗体标题栏上的按钮, 其中 ControlBox为 False,则标题栏上的所有按钮消失,这显然与题意不符,所以选项 B 和 D 肯定是错误的。MaxButton和 MinButton 属性分别决定最大化按钮和最小化按钮是
40、否显示,只有当二者都为 False 时,这两个按钮才都不显示。20.下列语句用来设置窗体 Form1 的属性,其中在运行时不能正确操作的语句是(分数:2.00)A.Form1.Capfin=“Form Test“B.ForName=“Form Test“ C.Form1.MaxButton=FalseD.Form1.MinButton=False解析:分析 这 4 个语句用来在运行时设置窗体的属性。其中 Form1.Captin=“Form Test“用来设置窗体的标题,Form1.Name=“Form Test“用来设置窗体的名称,Form1.MaxButton=False 用来隐藏窗体的最
41、大化按钮,Form1.MinButton=False 用来隐藏窗体的最小化按钮。从语法格式上来看,似乎没有什么问题,在输入时也不会产生错误,但是,窗体的 Name 属性是一个“只读”属性,在运行时不能改变,因此,程序运行后,当执行到 Form1.Name=“Form Test“语句时将会出错。21.窗体是 Visual Basic 中的对象,具有自己的属性、方法和(分数:2.00)A.控件B.函数C.事件 D.公用过程解析:分析 窗体是 Visual Basic 中的对象,具有自己的属性、方法和事件。22.以下能够触发文本框 Change 事件的操作是(分数:2.00)A.文本框失去焦点B.文
42、本框获得焦点C.当文本框不可用时D.改变文本框的内容 解析:分析 当用户向文本框中输入新信息或当程序将 Text 属性设置为新值从而改变文本框的 Text 属性时,将触发 Change 事件。23.在软件生命周期中,能准确确定软件系统必须做什么和必须具备的功能的阶段是(分数:2.00)A.概要设计B.详细设计C.可行性分析D.需求分析 解析:分析 需求分析是对待开发软件提出的需求进行分析并给出详细定义,它能确定软件系统必须做什么和必须具备哪些功能,所以选项 D 是正确答案。概要设计的基本任务是;设计软件系统结构、数据结构和数据库、编写概要设计文档和评审;详细设计主要是确定每个模块具体的执行过程
43、,也称过程设计;可性行分析是确定待开发软件系统的开发目标和总的要求,给出它的功能、性能、可靠性以及接口等方面的可能方案,制定完成开发任务的实施计划。因此选项 A、B 和 C 都不能确定软件系统必须做什么和必须具备的功能。24.对于如下图所示的二叉树,其后序遍历序列是 (分数:2.00)A.ABDECFGB.DEBAFCGC.DEBFGCA D.GFCEBDA解析:分析 后序遍历的过程是:若二叉树为空,则执行空操作;否则:后序遍历左子树;后序遍历右子树;访问根结点。根据这一过程,答案选 C。25.阅读如下程序: Private Sub Form_Click() Dim num As Intege
44、r,digit As Integer num=InputBox(“输入数据“) Do While num 0 digit=num Mod 10 num=num/10 Print digit; Loop End Sub 程序运行后,如果从键盘上输入 12345,则输出的结果为(分数:2.00)A.1 3 7 5 9B.5 4 3 2 1 C.2 4 6 8 10D.1 2 3 4 5解析:分析 本题使用了当循环,循环执行的条件是 num 不等于 0。在循环体内,先用 Mod 运算符求出输入的数 num 的余数,接着用 10 对该数进行整除,将得到的商赋给 num,最后输出余数。然后对整除后的 n
45、um 重复上述过程,直到 num 为 0,结束循环。实际上该程序的功能是:从右至左,逐个读取 num 的位数,并将其赋值给 digit,再在窗体上打印出来,即输出结果为:5、4、3、 2、1。26.Randomize 语句的功能是(分数:2.00)A.产生一个(0,1)之间的随机小数B.产生一个1,10之间的随机整数C.产生一个(-1,1)之间的随机小数D.产生新的随机整数 解析:分析 Randomize 语句称为初始化随机数生成器,即为 Rnd 函数产生新的随机整数。27.运行下列程序: Private Sub Form Click() Sum=0 For i=1 To 100 If Mid
46、(CStr(i),1, 1)=“1“ Then Sum=Sum+1 End If Next i Print Sum End Sub 单击窗体后,在窗体上显示的结果是(分数:2.00)A.12 B.13C.14D.15解析:分析 本题的功能是将 1100 之间以“1”为开头数的个数加起来,其结果赋值给变量 Sum,最终结果为 12。Mid(x,n1,n1)从 x 字符串左边第 n1 个位置开始向右起取 n1 个字符, CStr(n)将一数值n 转换成第一位非空字符的字符串型。28.在数据库的三级模式结构中,外模式有(分数:2.00)A.1 个B.2 个C.3 个D.任意多个解析:分析 外模式也称
47、子模式或用户模式,它是用户的数据视图,也就是用户所见到的数据模式,它由概念模式推导而出。概念模式给出了系统全局的数据描述,而外模式则给出每个用户的局部数据描述。一个概念模式可以有若干个外模式,每个用户只关心与它有关的模式,这样不仅可以屏蔽大量无关信息而且有利于数据保护。29.对长度为 n 的有序单链表,若搜索每个元素的概率相等,则顺序搜索到表中任一元素的平均搜索长度为(分数:2.00)A.n/2B.(n+1)/2 C.(n-1)/2D.n/4解析:分析 由于链表不能随机访问,要访问某个结点,必须从它的直接前驱的指针域出发才能找到。因此,链式存储的线性表,即使是有序表,也只能使用顺序查找。顺序查
48、找时,从表中的第一个元素开始,将给定的值与表中逐个元素的关键字进行比较,直到两者相符,查到所要找的元素为止。假设在每个位置查找概率相等,即 P1=P2 =Pn=1/n,若是从表头向表尾方向查找,则每个位置上查找比较次数为 C1=1,C 2=2,C n=n。于是,查找成功的平均查找长度为:30.以下测试方法是白盒测试法的是(分数:2.00)A.判定覆盖和边界值分析法B.等价类划分和错误推测法C.路径覆盖和判定/条件覆盖法 D.条件覆盖和错误推测法解析:分析 白盒测试法主要有逻辑覆盖、基本路径测试等。其中逻辑覆盖包括:语句覆盖、路径覆盖、判定覆盖、条件覆盖、判定/条件覆盖等。等价类划分法、错误推测法、边界值分析法都属于黑盒测试法。31.在窗体上画一个命令按钮(名称为 Command1),然后编写如下事件过程: Private Sub Command1_Click() a=4:b=5:c:6 Print a=b+c End Sub 程序运行后,单击命令按钮,其结果为(分数: