1、二级 VISUAL+BASIC 笔试-50 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.程序代码如下,当单击窗体上的 Command1 控件时,在窗体上输出的结果是( )。Private Sub Command1_Click()Dim aa(3,3)As IntegerDim i As Integer,j As IntegerDim s As IntegerFor i=0 To 3For j=0 To 3aa(i,j)=i*4+j+1Next jNext iFor i=0 To 3s=s+aa(i,1)Next iPrint sEnd
2、Sub(分数:2.00)A.32B.28C.30D.362.多态性机制不仅增加了面向对象软件系统的灵活性,进一步减少了信息冗余,而且显著地提高了软件的可重用性和( )。(分数:2.00)A.可扩充性B.健壮性C.可维护性D.可理解性3.栈实际上是一种特殊的线性表,即在这种线性表的结构中,( )。(分数:2.00)A.封闭端不可以插入和删除运算,而开口端可以插入和删除运算B.两端都是封闭的,可以进行插入和删除C.两端都是开口的,可以进行插入和删除D.两端都是开口的,不可以进行插入和删除4.已知窗体上有一名称为 Pic1 的图片框,现在要把图片文件“temp1bmp”装载到该图片框中,使用的语句是
3、( )。(分数:2.00)A.Pic1=“temp1bmp“B.Pic1Picture=LoadPictrue(“temp1bmp“)C.Pic1Picture=“temp1bmp“D.Pic1=LoadPictrue(“Temp1bmp“)5.Visual Basic 中工程文件的扩展名是( )。(分数:2.00)A.ResB.FrmC.VbpD.cls6.下列关于菜单项的说法中,正确的是( )。(分数:2.00)A.菜单项的标题在运行时不能改变B.要使菜单项不起作用,可把它的 Visible 属性设置为 FalseC.要在菜单中显示分隔符,可把一菜单项的标题设置为“_”D.菜单项的 Vis
4、ible 属性设置为 True,菜单项前将出现“”7.在“学生具有写字的功能”这句话中,“学生”和“写字”相当于面向对象程序设计中的( )。(分数:2.00)A.对象事件B.对象方法C.事件方法D.对象属性8.E-R 模型的三要素是( )。(分数:2.00)A.实体、属性、实体集B.实体、码、联系C.实体、属性、联系D.实体、域、码9.已知某弹出式菜单名为“p1”,它的 Visible 属性为 False。现在要让它在名为 Form1 的窗体上弹出,使用的命令是( )。(分数:2.00)A.Popup P1B.Form1Popup P1C.P1PopupD.Popup Form1p110.已知
5、通用对话框名为 Cd1g,则执行下列的( )语句,将弹出“帮助”对话框。(分数:2.00)A.Cd1gShowHelpB.Cd1gShowAidC.HelpCd1gD.ShowHelp Cd1g11.在窗体上有一个列表框,名称为 List1,该列表框中有三个选项,分别为“123”、“456”和“789”,当前没有任何选项被选中,则执行 List1RemoveItem List1ListIndex 语句后,移去的是( )。(分数:2.00)A.123B.456C.789D.出错12.在窗体上画一个命令按钮,名称为 Command1。然后编写如下程序:Private Sub Command1_Cl
6、ick()Dim j As Integer,s As Integers=1Dos=s+jj=j+1Loop Until j=5Print sEnd Sub程序运行后,单击命令按钮,在窗体上输出的结果是( )。(分数:2.00)A.11B.1C.16D.713.要进行随机文件的读写,可使用下面的( )语句。(分数:2.00)A.Line Input #和 Print#B.Input #和 Write #C.Get #和 Put#D.A、B、C 均可14.目录列表框中的( )属性用来设置和返回目录列表框中当前选中的目录。(分数:2.00)A.DriveB.PathC.NameD.Pattern15
7、.不能在标准模块中使用或定义的是( )。(分数:2.00)A.私有变量B.公共变量C.通用过程D.事件过程16.以下 Case 语句中错误的是_。(分数:2.00)A.Case 0 To 10B.Case Is10C.Case Is10 And Is50D.Case 3,5,Is1017.当用户要自定义鼠标指针图形,除要对 MouseIcon 属性进行设置外,还必须将 MousePointer 属性设置为( )。(分数:2.00)A.0B.1C.64D.9918.数据库系统是由计算机硬件、数据库、人和软件支持系统组成,其中( )体现数据之间的联系。(分数:2.00)A.C 语言B.CPUC.数
8、据库管理系统D.数据库19.软件开发的结构化方法中,常应用数据字典技术,其中数据加工是其组成内容之一,下述方法中,常用于编写加工说明方法的是( )。结构化语言 判定树 判定表(分数:2.00)A.只有B.只有C.和D.都是20.下列有关二叉树的说法中,正确的是( )。(分数:2.00)A.二叉树的度为 2B.一棵二叉树的度可以小于 2C.二叉树中任何一个结点的度都为 2D.任何一棵二叉树中至少有一个结点的度为 221.当控件的( )属性设置为 1 时,可进行自动拖放。(分数:2.00)A.DragModeB.DragOverC.DragDropD.Draglcon22.设有如下通用过程:Pub
9、lic Function f(x As Integer)Dim y As Integerx=20y=2f=x*yEnd Function在窗体上画一个名称为 Command1 的命令按钮,然后编写如下事件过程;Private Sub Command1_Click()Static x As Integerx=10y=5y=f(x)Print x;yEnd Sub程序运行后,如果单击命令按钮,则在窗体上显示的内容是( )。(分数:2.00)A.10 5B.20 5C.20 40D.10 4023.在变量的隐式说明中,下列( )是单精度型变量。(分数:2.00)A.ABCD&B.CDEF!C.HIJ
10、K$D.UIOP24.在窗体上画一个名称为 Command1 的命令按钮,然后编写如下事件过程:Private Sub Command1_Click()Dim a As Integer,s As Integera=8s=1Dos=s+aa=a-1Loop While a=0Print s;aEnd Sub程序运行后,单击命令按钮,则窗体上显示的内容是( )。(分数:2.00)A.7 9B.34 0C.9 7D.死循环25.下列( )表达式不能表示“整数 X 和 Y 之一为零,但不能同时为零”。(分数:2.00)A.A=0 Or B=0B.AB And A*B=0C.(A=0 And B0)Or
11、(A0 And B=0)D.26.下列表达式的值为 Tme 的是( )。(分数:2.00)A.1000999B.“1000“999“C.True Xor “1000“999“D.1000999 Xor False27.在窗体上画一个按钮,然后编写如下的事件代码。在按钮上单击,输出为( )。Option Base 1Private Sub fun(a()As Integer,n As Integer)ReDim Preserve a(6)a(6)=a(1)*a(3)*a(5)n=UBound((分数:2.00)A.End SubPriva28.31(分数:2.00)A.17B.1529.在窗体上
12、有若干控件,其中有一个名称为,Text1 的文本框。影响 Text1 的 Tab 顺序的属性是_。(分数:2.00)A.TabStopB.EnabledC.VisibleD.TabIndex30.对 n 个记录的序列进行快速排序,所需的辅助存储空间为( )。(分数:2.00)A.O(1)B.O(log2n)C.O(n)D.O(n2)31.改变控件的位置不能通过下列( )方法来直接实现。(分数:2.00)A.使用 Move 方法B.拖放控件C.改变控件 Left 值D.改变控件 Top 值32.在下列关系代数的操作中,不属于专门的关系运算是( )。(分数:2.00)A.自然连接B.投影C.广义笛
13、卡尔积D. 连接33.( )是测试和组装软件的过程。(分数:2.00)A.单元测试B.集成测试C.系统测试D.验收测试34.在窗体上画一个按钮,然后编写如下的事件代码。在按钮上单击,输出为( )。Private Sub func(a As Integer)Static m As IntegerDim n As Integerm=m+an=n+aPrint m;nEnd SubPrivate Sub Command1_Click()Dim k As Integerk=4Call func(k)Call func(k)End Sub(分数:2.00)A.4 88 8B.4 48 4C.4 48 8
14、D.8 48 835.模块的( )定义为受该模块内一个判断影响的所有模块的集合。(分数:2.00)A.控制域B.作用域C.宽度D.接口二、填空题(总题数:11,分数:30.00)36.对长度为 n 的线性表进行顺序查找,最坏情况下所需比较的次数为 【1】 。(分数:2.00)填空项 1:_37.多态性机制不仅增加了面向对象软件系统的灵活性,进一步减少了信息冗余,而且显著地提高了软件的可重用性和 【2】 。(分数:2.00)填空项 1:_38.算法一般都可以用选择结构、循环结构和 【3】 结构组合而成。(分数:2.00)填空项 1:_39.在最坏情况下,堆排序需要比较的次数为 【4】 。(分数:
15、2.00)填空项 1:_40.数据模型所描述的内容通常由数据结构、数据操作和 【5】 三部分组成。(分数:2.00)填空项 1:_41.为命令按钮的 Picture 属性装入了一个图片,但却发现图片没有显示出来,要使图片显示出来,应设置它的 【6】 属性。(分数:2.00)填空项 1:_42.在窗体上有一个名为 Image1 的图像框,现在要把“D:”盘根目录下的图片文件“Foxbmp”在其中显示出来,使用的语句是 【7】 。(分数:2.00)填空项 1:_43.以下程序的执行结果是 【8】 。a=15.5635b=Int(a*100+0.5)/100Print b(分数:2.00)填空项 1
16、:_44.下列程序的功能是:单击窗体时将随机生成 10 个 099 之间的随机数,并赋值给数组 A,然后利用选择法排序;并把排序后的结果输出。Private Sub Form_Click()Dim A(9) As Integer,i As IntegerDim j As Integer,k As IntegerRandomizeFor i=0 To 9A(i)=Int(100*Rnd)Next iFor i=0 To 8k= 【9】 For j=i To 9If(A(k)A(j)Then【10】 End IfNext jIf ki Thent=A(k):A(k)=A(i):A(i)=tEnd
17、IfNext iFor i=0 To 9Print A(i),Next iPrintEnd Sub(分数:4.00)填空项 1:_45.在窗体上建立名称为了 ext1、Text2 和 Text3 的三个文本框,其中 Text1 和 Text2 文本框用来接受两个整数(假设为 M 和 N),建立一个名称为 Command1 的命令按钮,单击它将得到数 M 从右边起的第 N 位数字,并把该数字显示在 Text3 文本框中,如图 20-15 如示。请填空。(分数:4.00)填空项 1:_46.下列程序实现的功能是:从键盘上输入 10 个整数,并把它们写到“D:”盘“a1dat”文件中,然后从中读出第
18、 5 个数并输出。Private Sub Form_Click()Dim k As IntegerDim n As Integer,i As Integern=Len(k)Open 【13】 As#10 Len=nFor i=1 To 10k=InputBox(“请输入一个整数“)【14】 Next i【15】 Get #10,kPrint kEnd Sub(分数:6.00)填空项 1:_二级 VISUAL+BASIC 笔试-50 答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.程序代码如下,当单击窗体上的 Command1 控件时,在窗体上
19、输出的结果是( )。Private Sub Command1_Click()Dim aa(3,3)As IntegerDim i As Integer,j As IntegerDim s As IntegerFor i=0 To 3For j=0 To 3aa(i,j)=i*4+j+1Next jNext iFor i=0 To 3s=s+aa(i,1)Next iPrint sEnd Sub(分数:2.00)A.32 B.28C.30D.36解析:解析 当发生 Command1_click 事件时,将定义一个 4 行 4 列的数组 aa (数组下标从 0 开始),然后通过一个两层 For 循
20、环给它的各个元素赋值,赋值规律是给每一个元素赋它的行下标值乘以 4,再加上列下标值再加 1。然后通过一个 For 循环把数组元素 aa(0,1)、aa(1,1)、aa(2,1)和 aa(3,1)的值2、6、10、14 加到 s 中,s 的值为 32。2.多态性机制不仅增加了面向对象软件系统的灵活性,进一步减少了信息冗余,而且显著地提高了软件的可重用性和( )。(分数:2.00)A.可扩充性 B.健壮性C.可维护性D.可理解性解析:解析 利用多态性机制,当扩充系统功能增加新的实体类型时,只需派生出与新实体相应的新的子类即可实现,用户可以发送一般形式的消息,而具体的实现细节可以由接受消息的对象来实
21、现,便于软件重用和扩充。3.栈实际上是一种特殊的线性表,即在这种线性表的结构中,( )。(分数:2.00)A.封闭端不可以插入和删除运算,而开口端可以插入和删除运算 B.两端都是封闭的,可以进行插入和删除C.两端都是开口的,可以进行插入和删除D.两端都是开口的,不可以进行插入和删除解析:解析 栈是一种特殊的线性表,插入和删除运算都在线性表的一端进行。在这种线性表的结构中,一端是封闭的,不允许进行插入和删除元素:另一端是开口的,允许插入和删除运算。故选项 A 是正确的。4.已知窗体上有一名称为 Pic1 的图片框,现在要把图片文件“temp1bmp”装载到该图片框中,使用的语句是( )。(分数:
22、2.00)A.Pic1=“temp1bmp“B.Pic1Picture=LoadPictrue(“temp1bmp“) C.Pic1Picture=“temp1bmp“D.Pic1=LoadPictrue(“Temp1bmp“)解析:解析 给图片框、图像框、窗体等装载图片可使用 LoadPicture 函数,使用形式如下:对象名 Picture=LoadPicture(“图像文件名”)5.Visual Basic 中工程文件的扩展名是( )。(分数:2.00)A.ResB.FrmC.Vbp D.cls解析:解析 res 是 VB 资源文件的扩展名,frm 是 VB 窗体文件的扩展名,vbp 是
23、 VB 工程文件的扩展名,cls 是 VB 类模块文件的扩展名。6.下列关于菜单项的说法中,正确的是( )。(分数:2.00)A.菜单项的标题在运行时不能改变B.要使菜单项不起作用,可把它的 Visible 属性设置为 FalseC.要在菜单中显示分隔符,可把一菜单项的标题设置为“_” D.菜单项的 Visible 属性设置为 True,菜单项前将出现“”解析:解析 菜单项的属性可以在运行时通过程序更改,包括菜单项的标题。要使菜单项不起作用,可把它的 Enabled 属性设置为 False。要使菜单项前面加上一个“”,可把它的 Checked 属性设置为True。菜单项的 Visible 属性
24、为 True 时,菜单项将显示出来,为 False 时菜单项不显示。要使菜单项显示成一个分隔符,可把它的标题设置为“_”。7.在“学生具有写字的功能”这句话中,“学生”和“写字”相当于面向对象程序设计中的( )。(分数:2.00)A.对象事件B.对象方法 C.事件方法D.对象属性解析:解析 每一个个体相当于对象,对象具有的功能是对象的方法。这句话中学生是个体,是对象;写字是功能,是方法。8.E-R 模型的三要素是( )。(分数:2.00)A.实体、属性、实体集B.实体、码、联系C.实体、属性、联系 D.实体、域、码解析:解析 E-R 模型的三要素是:实体,客观存在并可相互区分的事物叫实体;属性
25、,实体所具有的某一特性称为属性;联系,现实世界中的事物之间是有联系的,这些联系反映为实体内部的联系与实体之间的联系。9.已知某弹出式菜单名为“p1”,它的 Visible 属性为 False。现在要让它在名为 Form1 的窗体上弹出,使用的命令是( )。(分数:2.00)A.Popup P1B.Form1Popup P1 C.P1PopupD.Popup Form1p1解析:解析 要在窗体上弹出弹出式菜单,可在菜单设计器中把该菜单的 Visible 属性设置为 False,让它不可见,在执行时通过窗体的 Popup 方法把它弹出,该方法的格式是:窗体名Popup 菜单名10.已知通用对话框名
26、为 Cd1g,则执行下列的( )语句,将弹出“帮助”对话框。(分数:2.00)A.Cd1gShowHelp B.Cd1gShowAidC.HelpCd1gD.ShowHelp Cd1g解析:解析 可通过调用通用对话框的方法来弹出不同的对话框,要弹出“帮助”对话框,可调用通用对话框的“ShowHelp”方法。注意通用对话框无 ShowAid 方法,ShowHelp 也不是语句。11.在窗体上有一个列表框,名称为 List1,该列表框中有三个选项,分别为“123”、“456”和“789”,当前没有任何选项被选中,则执行 List1RemoveItem List1ListIndex 语句后,移去的是
27、( )。(分数:2.00)A.123B.456C.789D.出错 解析:解析 在列表框中没有选项被选中时,列表框的 ListIndex 的值为-1,列表框的 RemoveItem 方法后面跟一个整数,指出移去的选项的序号,其范围为 0ListCount-1,该值为-1 将是错误的。12.在窗体上画一个命令按钮,名称为 Command1。然后编写如下程序:Private Sub Command1_Click()Dim j As Integer,s As Integers=1Dos=s+jj=j+1Loop Until j=5Print sEnd Sub程序运行后,单击命令按钮,在窗体上输出的结果
28、是( )。(分数:2.00)A.11 B.1C.16D.7解析:解析 当发生 Command1_Click 事件时,定义了一个变量 j 和一个变量 s 并给 s 赋值为 1,执行DoLoop Until 循环,此处需注意循环的结束条件是 Until 后面的条件为 True。第一次执行循环体后,s 的值为 1,j 的值为 1,条件“j=5”为 False,接着循环;第二次执行循环体后,s 的值为 2,j 的值为 2,条件“j=5”为 False,接着循环;第三次执行循环体后,s 的值为 4,j 的值为 3,条件“j=5”为 False,接着循环;第四次执行循环体后,s 的值为 7,j 的值为 4
29、,条件“j=5”为False,接着循环:第五次执行循环体后,s 的值为 11,j 的值为 5,条件“j=5”为 True,结束循环。输出的 s 的值为 11。13.要进行随机文件的读写,可使用下面的( )语句。(分数:2.00)A.Line Input #和 Print#B.Input #和 Write #C.Get #和 Put# D.A、B、C 均可解析:解析 要进行随机文件的读写只能使用 Get#和 Put#语句来实现,Line Input #和 Write#以及Input#语句和 Write#语句都是顺序文件的读写语句。14.目录列表框中的( )属性用来设置和返回目录列表框中当前选中的
30、目录。(分数:2.00)A.DriveB.Path C.NameD.Pattern解析:解析 目录列表框无 Drive 属性,Drive 属性是驱动器列表框的属性。目录列表框无 PaRern 属性,Pattern 属性是文件列表框中的属性。Path 属性的作用是用来设置和返回目录列表框中的当前目录。Name属性是目录列表框的名称,用来标识控件。15.不能在标准模块中使用或定义的是( )。(分数:2.00)A.私有变量B.公共变量C.通用过程D.事件过程 解析:解析 标准模块也称全局模块或总模块,可以由全局变量声明、模块声明及通用过程、函数等几部分组成。其中全局声明放在标准模块的首部,过程和函数
31、则可以随便排列。标准模块没有控件的事件处理过程。16.以下 Case 语句中错误的是_。(分数:2.00)A.Case 0 To 10B.Case Is10C.Case Is10 And Is50 D.Case 3,5,Is10解析:解析 在 Case 子句中使用 Is 关键字定义条件时只能使用简单条件,不能用关系运算符将多个简单条件组合在一起。17.当用户要自定义鼠标指针图形,除要对 MouseIcon 属性进行设置外,还必须将 MousePointer 属性设置为( )。(分数:2.00)A.0B.1C.64D.99 解析:解析 MousePointer 属性用来指定鼠标指针图形,当它的值
32、在 115 之间时,鼠标指针将是某一种系统指针图形,当其取值为 99 时,用户可以通过 MouseIcon 属性来定义鼠标指针图形。18.数据库系统是由计算机硬件、数据库、人和软件支持系统组成,其中( )体现数据之间的联系。(分数:2.00)A.C 语言B.CPUC.数据库管理系统D.数据库 解析:解析 数据库系统是实现有组织地、动态地存储大量关联数据,方便多用户访问的计算机软、硬件资源组成的系统,即采用了数据库技术的计算机系统。它是存储介质、处理对象和管理系统的集合体,通常由数据库、数据库管理系统、硬件、软件和数据库管理员等组成。19.软件开发的结构化方法中,常应用数据字典技术,其中数据加工
33、是其组成内容之一,下述方法中,常用于编写加工说明方法的是( )。结构化语言 判定树 判定表(分数:2.00)A.只有B.只有C.和D.都是 解析:解析 数据字典是对数据定义的信息的集合。它是对数据流图中包含的所有元素定义的集合。加工是对数据流图中每一个不能再分解的基本加工的精确说明,而对数据流图中的其他非基本加工则不必说明。加工描述方法通常可以用结构化语言、判定表和判定树这三种半形式化的方法编写加工说明。20.下列有关二叉树的说法中,正确的是( )。(分数:2.00)A.二叉树的度为 2B.一棵二叉树的度可以小于 2 C.二叉树中任何一个结点的度都为 2D.任何一棵二叉树中至少有一个结点的度为
34、 2解析:解析 二叉树的定义为:二叉树是结点的有限集合,这个有限集合或者为空集,或者由一个根结点及两棵不相交的分别称为这个根的左子树和右子树的二叉树所构成,这里的左子树和右子树也符合二叉树的定义。由二叉树定义可得到:二叉树可以是空集,当二叉树为空集时,度为 0:每个结点有两棵可以是空集的子树,当一棵子树为空,另一棵子树不为空时,该结点的度为 1,都不为空时,度为 2。由此可判断 A、C、D 是错误的,二叉树的度可以为 0、1,结点的度也可以是 0、1;选项 B 是正确的。21.当控件的( )属性设置为 1 时,可进行自动拖放。(分数:2.00)A.DragMode B.DragOverC.Dr
35、agDropD.Draglcon解析:解析 实现对象的拖放有两种方式:自动方式和手工方式。可通过对源对象的 DragMode 属性赋值来进行拖放方式的设置,如果把该属性设置为 1,将采用自动方式,赋值为 0 时采用手动方式。DragOver是一个事件,当拖放一个对象经过某个对象时将发生经过对象的 DragOver 事件。DragDrop 也是一个事件,当源对象被投放到目标对象上,即释放鼠标,或在程序中采用 Drag 方法结束拖放时将在目标控件上引发DragDrop 事件。DragIcon 是一个属性,它的值是一个图标的文件名(Icon 或 Cur),拖动时作为控件图标出现。22.设有如下通用过
36、程:Public Function f(x As Integer)Dim y As Integerx=20y=2f=x*yEnd Function在窗体上画一个名称为 Command1 的命令按钮,然后编写如下事件过程;Private Sub Command1_Click()Static x As Integerx=10y=5y=f(x)Print x;yEnd Sub程序运行后,如果单击命令按钮,则在窗体上显示的内容是( )。(分数:2.00)A.10 5B.20 5C.20 40 D.10 40解析:解析 在 f 过程中实参 x 的值被改变,值为 20。而 y 的值是函数返回的值,为 40
37、。23.在变量的隐式说明中,下列( )是单精度型变量。(分数:2.00)A.ABCD&B.CDEF! C.HIJK$D.UIOP解析:解析 VB 中的变量可以通过 Dim、Public、Private、Static 等语句来进行“显式说明”,也可进行“隐式说明”,即采用在变量名后加一个用于规定变量类型的说明字符,来规定变量的类型。VB 中规定的变量说明字符与类型如下:%代表整型变量、&代表长整型变量、!代表单精度变量、#代表双精度变量、代表货币型变量、$代表字符型变量。24.在窗体上画一个名称为 Command1 的命令按钮,然后编写如下事件过程:Private Sub Command1_Cl
38、ick()Dim a As Integer,s As Integera=8s=1Dos=s+aa=a-1Loop While a=0Print s;aEnd Sub程序运行后,单击命令按钮,则窗体上显示的内容是( )。(分数:2.00)A.7 9B.34 0C.9 7 D.死循环解析:解析 因为是 DoLoop While 形式的循环,至少执行一次循环体,而循环条件为 a=0,在第一次循环体执行后,a 的值为 70,不满足循环条件执行 Loop 后面的语句,所以显示的内容为:9 7。25.下列( )表达式不能表示“整数 X 和 Y 之一为零,但不能同时为零”。(分数:2.00)A.A=0 Or
39、 B=0 B.AB And A*B=0C.(A=0 And B0)Or(A0 And B=0)D.解析:解析 答案 A 表示的是 A=0 或者 B=0,它们可以同时为零,因此不符合题意;答案 B 中的 A*B=0表示 A 和 B 至少有一个为零,而“AB”说明 A 和 B 中只有一个为零。很显然,答案 C 和答案 D 的表达式都符合命题描述的含义。26.下列表达式的值为 Tme 的是( )。(分数:2.00)A.1000999B.“1000“999“ C.True Xor “1000“999“D.1000999 Xor False解析:解析 数值型比较按数值大小比较,故答案 A 是 False
40、;字符串比较的规律是从第一个字符开始依次比较两个字符串中的对应字符,直到遇到第一个不相等的字符为止,此时哪个字符的 ASCII 码大,对应的字符串就大,如果两个字符串的所有字符都相等,则两个字符串相等。由于“1”的 ASCII 码比“9”的 ASCII 码小,所以答案 B 的结果为 True。 Xor 运算符只有在两个运算对象一个为 True 一个为 False 时结果才为 True,如果两个运算对象相同,则结果为 False。所以答案 C 和答案 D 都是 False。27.在窗体上画一个按钮,然后编写如下的事件代码。在按钮上单击,输出为( )。Option Base 1Private Su
41、b fun(a()As Integer,n As Integer)ReDim Preserve a(6)a(6)=a(1)*a(3)*a(5)n=UBound((分数:2.00)A.End SubPriva解析:解析 当发生 Command1_Click 事件时,首先定义了一个可调数组 arrl,接着重新定义它的长度为 5,然后通过一个 For 循环给该数组元素 arrl(1)arrl(5)赋值 15。给 k 赋值 6,调用过程 fun,把数组 arrl 按地址传递给形参数组 a,把变量 k 按地址传递给形参变量 n。在 fun 过程中重新定义了数组 a的长度为 6,并保持原来的值,给 a(6
42、)赋值为 1*3*5,并通过 Ubound 函数求得该数组的下标上界并赋值给 n,n 的值为 6。过程调用返回后,由于是按地址传递的,所以对形参数组 a 的修改就是对实参数组arrl 的修改,对形参 n 的修改就是对实参 k 的修改,k 的值为 6。输出 arrl(1)和 arrl(6)的值分别为 1和 15。28.31(分数:2.00)A.17B.15解析:解析 本题定义了一个可在本窗体的所有过程中使用的窗体级变量 k,并在 Form_Load 事件给它赋值 15。第一次单击 Command1 时,定义了一个变量 b,然后执行两条赋值语句,执行后变量 b 的值为15、变量 k 的值为 16,
43、输出的第一行为 16 15。第二次单击 Command1 按钮时,b 重新定义,初值为 0,而窗体级变量 k 的值为 16,执行两条赋值语句后,变量 b 的值为 16、变量 k 的值为 17,输出的第二行为 17 16。29.在窗体上有若干控件,其中有一个名称为,Text1 的文本框。影响 Text1 的 Tab 顺序的属性是_。(分数:2.00)A.TabStopB.EnabledC.VisibleD.TabIndex 解析:解析 影响控件Tab键顺序的属性是 TabIndex 属性,它决定了控件的Tab键次序。30.对 n 个记录的序列进行快速排序,所需的辅助存储空间为( )。(分数:2.
44、00)A.O(1)B.O(log2n) C.O(n)D.O(n2)解析:解析 快速排序对待排序序列的划分大约为 log2n 次,而快速排序是通过递归算法来完成的,递归深度大约为 log2n,因此所需的辅助存储空间为 O(log2n)。31.改变控件的位置不能通过下列( )方法来直接实现。(分数:2.00)A.使用 Move 方法B.拖放控件 C.改变控件 Left 值D.改变控件 Top 值解析:解析 用鼠标拖放控件不能改变控件的位置,移动控件必须通过执行程序代码来实现。使用 Move方法,可以把控件移动到指定的位置,给控件的 Left 属性赋值可以改变控件的水平位置,给控件的 Top属性赋值
45、可改变控件的垂直位置。32.在下列关系代数的操作中,不属于专门的关系运算是( )。(分数:2.00)A.自然连接B.投影C.广义笛卡尔积 D. 连接解析:解析 关系代数的运算可分两类:一类是传统的集合运算,如并、差、交、笛卡尔积,这类运算将关系看成元组的集合,其运算是从关系的“水平”方向,即行的角度来进行的。另一类是专门的关系运算,这类运算不仅涉及行而且涉及列,主要包括对关系进行垂直分解的投影操作,对关系进行水平分解的选择操作,对关系进行结合的连接操作,在关系数据库的任何检索操作都可以由三种基本检索运算组合而实现。33.( )是测试和组装软件的过程。(分数:2.00)A.单元测试B.集成测试
46、C.系统测试D.验收测试解析:解析 集成测试是测试和组装软件的过程。它把模块在按照设计要求组装起来的同时进行测试,目的是发现与接口有关的错误。34.在窗体上画一个按钮,然后编写如下的事件代码。在按钮上单击,输出为( )。Private Sub func(a As Integer)Static m As IntegerDim n As Integerm=m+an=n+aPrint m;nEnd SubPrivate Sub Command1_Click()Dim k As Integerk=4Call func(k)Call func(k)End Sub(分数:2.00)A.4 88 8B.4
47、48 4 C.4 48 8D.8 48 8解析:解析 当发生 Command1_Click 事件时,定义了一个变量 k 并给它赋值 4,调用过程 func,把 k按地址传递给形参 a,在 func 过程中定义了一个静态变量 m 和一个局部变量 n,执行下面的两条赋值语句后,m 和 n 的值都为 4,所以输出结果为 4 4。过程调用返回后再一次调用 func 过程,此处需注意的是静态变量 m 将保留上一次退出时的值 4,而变量 m 重新定义,它的值为 0,执行下面的两条赋值语句后,m的值为 8,n 的值为 4,输出为 8 4。35.模块的( )定义为受该模块内一个判断影响的所有模块的集合。(分数
48、:2.00)A.控制域B.作用域 C.宽度D.接口解析:解析 模块的控制域是这个模块本身以及所有直接或间接从属于它的模块的集合。模块作用域定义为受该模块内一个判断影响的所有模块的集合。宽度是软件结构内同一个层次上的模块总数的最大位,一般说来,宽度越大,系统越复杂。对宽度影响最大的因素是模块的扇出。模块间接口的复杂程度影响模块耦合强弱。二、填空题(总题数:11,分数:30.00)36.对长度为 n 的线性表进行顺序查找,最坏情况下所需比较的次数为 【1】 。(分数:2.00)填空项 1:_ (正确答案:n)解析:解析 对线性表进行顺序查找是从线性表的第一个元素开始,依次将线性表中的元素与要查找的元素进行比较。如果被查找元素是线性表中的最后一个元素,或者被查元素不在线性表中,则为了查找这个元素,需要与线性表中所有的元素进行比较,这是顺序查找最坏的情况,即对长度为 n 的线性表,最坏情况下要进行 n 次比较。37.多态性机制不仅增加了面向对象软件系统的灵活性,进一步减少了