1、二级 VISUAL+BASIC 笔试-414 及答案解析(总分:96.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.栈和队列的共同特点是( )。A) 都是先进先出 B) 都是先进后出C) 只允许在端点处插入和删除元素 D) 没有共同点(分数:2.00)A.B.C.D.2.线性表是一个( )。A) 有限序列,可以为空 B) 有限序列,不能为空C) 无限序列,可以为空 D) 无限序列,不能为空(分数:2.00)A.B.C.D.3.设有下列二叉树:(分数:2.00)A.B.C.D.4.下列叙述中,不属于软件需求规格说明书的作用的是( )。A) 便于用户、开发人员进行理解
2、和交流B) 反映出用户问题的结构,可以作为软件开发工作的基础和依据C) 作为确认测试和验收的依据D) 便于开发人员进行需求分析(分数:2.00)A.B.C.D.5.结构化程序设计主要强调的是( )。A) 程序的规模 B) 程序的效率C) 程序设计语言的先进性 D) 程序易读性(分数:2.00)A.B.C.D.6.下列选项中,不属于模块间耦合的是( )。A) 数据耦合 B) 标记耦合 C) 异构耦合 D) 公共耦合(分数:2.00)A.B.C.D.7.在数据管理技术的发展过程中,可实现数据共享的是( )。A) 人工管理阶段 B) 文件系统阶段 C) 数据库系统阶段 D) 系统管理阶段(分数:2.
3、00)A.B.C.D.8.下列叙述中,正确的是( )。A) 用 E-R 图能够表示实体集间一对一的联系、一对多的联系和多对多的联系B) 用 E-R 图只能表示实体集之间一对一的联系C) 用 E-R 图只能表示实体集之间一对多的联系D) 用 E-R 图表示的概念数据模型只能转换为关系数据模型(分数:2.00)A.B.C.D.9.有三个关系 R、S 和 T 如下。RBCDa0k1b1n1SBCDf3h2a0k1n2x1TBCDa0k1由关系 R 和 S 通过运算得到关系 T,则所使用的运算为( )。A) 并 B) 自然连接 C) 笛卡儿积 D) 交(分数:2.00)A.B.C.D.10.以下不属于
4、对象的基本特点的是( )。A) 分类性 B) 多态性 C) 继承性 D) 封装性(分数:2.00)A.B.C.D.11.窗体文件的扩展名是( )。A) .bas B) .cls C) .frm D) .res(分数:2.00)A.B.C.D.12.关闭当前的工程并退出 Visual Basic 的快捷键是( )。A) Alt+B B) Alt+Q C) Alt+Shift D) Alt+a(分数:2.00)A.B.C.D.13.下列代码运行后输出结果是( )。Defstr B-EPrivate Sub Cornmand1_Click()B$=“123”C=“456”Print B+C$End
5、SubA) 123456 B)“123456” C) 123+“456” D) 显示出错信息(分数:2.00)A.B.C.D.14.下面说法不正确的是( )。A) 变量名的长度不能超过 255 个字符B) 变量名可以包含小数点或者内嵌的类型声明字符C) 变量名不能使用关键字D) 变量名的第一个字符必须是字母(分数:2.00)A.B.C.D.15.文本框的 ScrollBars 属性设置为非零值,却没有效果,原因是( )。A) 文本框中没有内容 B) 文本框的 MultiLine 属性值为 FalseC) 文本框的 MultiLine 属性值为 True D) 文本框的 Locked 属性值为
6、True(分数:2.00)A.B.C.D.16.设 A:“123456”,则表达式 Val(Left(A,4)+Mid(A,4,2)的值为( )。A) 123456 B) 123445 C) 5 D) 6(分数:2.00)A.B.C.D.17.在窗体上画一个命令按钮,然后编写如下事件过程。Private Sub Command1_Click()For i=1 To 4x=4For j=1 To 2X=X+6NextNextPrint XEnd Sub程序运行后,单击命令按钮,输出结果是( )。A) 12 B) 13 C) 16 D)17(分数:2.00)A.B.C.D.18.要触发组合框的 D
7、blClick 事件,只有将组合框的 Style 属性设置为( )。A) 0 B) 1 C) 2 D) 3(分数:2.00)A.B.C.D.19.下列语句中,获得列表框 List1 中项目个数的语句是( )。A) X=List1.ListCount B) X=ListCount C) X=List1.ListIndex D) X=ListIndex(分数:2.00)A.B.C.D.20.下列选项中不属于结构化程序设计方法的主要原则的是( )。A) 自顶向下 B) 逐步求精C) 模块化 D) 可复用(分数:2.00)A.B.C.D.21.以下合法的变量名是( )。A) A%B B) Test1
8、C) 1cost D) And(分数:2.00)A.B.C.D.22.阅读程序:Option Base 1Dim arr()As IntegerPrivate Sub Form_Click()Dim i As Integer,j As IntegerReDim arr(3,21For i=1 To 3Forj=1 To 2arr(i,j)=i*2+jNextNextReDim Preserve arr(3,4)For i=3 To 4arr(3,j)=j+9NextPrint arr(3,2)+arr(3,4)End Sub程序运行后,单击窗体,输出结果为( )。A) 21 B) 13 C)
9、8 D) 25(分数:2.00)A.B.C.D.23.有如下程序:Private Sub Command1_Click()a$=“A WORKER IS HERE“X=Len(a$)For i=1 To X-1b$=Mid$(a$,i,3)If b$=“WOR“ Then S=S+1NextPrint SEnd Sub单击命令按钮,程序运行结果为( )。A) 1 B) 2 C) 3 D) 5(分数:2.00)A.B.C.D.24.Mid(“Hello Everyone“,7,3)的执行结果是( )。A) yon B) every C) Eve D) one(分数:2.00)A.B.C.D.25
10、.执行下列程序段后,输出的结果是( )。For k1=0 To 4y=20For k2=0 To 3y=10For k3=0 To 2y=y+10Next k3,k2,k1Print yA) 90 B) 60 C) 40 D) 10(分数:2.00)A.B.C.D.26.在窗体上画一个命令按钮,然后编写如下事件过程。Private Sub Command1_Click()For i=I To 4X=4Fori=1 To 3X=3For k=1 To 2X=X+6NextNextNextPrint XEnd Sub程序运行后,单击命令按钮,输出的结果是( )。A) 7 B) 15 C) 157
11、D) 538(分数:2.00)A.B.C.D.27.定义有 5 个整数型元素的数组,正确的语句是( )。A) Dim a(4) As Integer B) Option Base 1:Dim a(5)C) Dim a“水”:NextPrintNextA) *B) *C) *D) *(分数:2.00)A.B.C.D.29.下列程序的执行结果为( )。Private Sub Command1_Click()Dim FirStr As StringFirStr=“abcdef“Print Pat(FirStr)End SubPrivate Function Pat(xStr As String) A
12、s StringDim tempStr As String, strLen As IntegertempStr=“strLen=Len(xStr)i=1Do While iLen(xStr)-3tempStr=tempStr+Mid(xStr,i,1)+Mid(xStr, strLen -1+1,1)i=i+1LoopPat=tempStrEnd FunctionA) abcdef B) afbecd C) fedcba D) defabc(分数:2.00)A.B.C.D.30.声明一个变量为局部变量应该用( )。A) Global B) Private C) Static D) Public
13、(分数:2.00)A.B.C.D.31.编写如下事件过程。Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)Print Chr(KeyCode)End SubPrivate Sub Form_KeyPress(KeyAscii As Integer)Print Chr(KeyAscii)End Sub在一般情况下(即不按住 Shift 键和锁定大写键时)运行程序,若按 T 键,则程序输出的结果是( )。A) T T B) t T C) T C D) t t(分数:2.00)A.B.C.D.32.下列对变量的定义中,不能定
14、义 a 为变体变量的是( )。A) Dim a As Double B) Dim a As VariantC) Dim a D) a=24(分数:2.00)A.B.C.D.33.以下事件过程可以将打开对话框的标题改为“新时代”的是( )。A) Private Sub Command2_Click()CommonDialoglDialogTitle=“新时代”CommonDialogl.ShowOpenEnd SubB) Private Sub Command2_Click()CommonDialog1DialogTitle=“新时代”CommonDialog1.ShowFontEnd SubC
15、) Private Sub Command2_Click()CommonDialog1.DialogTitle=“新时代”CommonDialog1.ShowEnd SubD) Private Sub Command2_Click()CommonDialog1DialogTitle=“新时代“CommonDialog1.ShowColorEnd Sub(分数:2.00)A.B.C.D.34.当程序运行时,在窗体上单击鼠标,在以下事件中,窗体不能响应的是( )。A) MouseDOWP B) MouseUP C) Load D) Click(分数:2.00)A.B.C.D.35.要获得当前驱动器
16、应使用的驱动器列表框的属性是( )。A) Path B) Drive C) Dir D) Pattern(分数:2.00)A.B.C.D.二、填空题(总题数:13,分数:26.00)36.在长度为 n 的线性表中,寻找最大项至少需要比较 (1) 次。(分数:2.00)填空项 1:_37.某二叉树中度为 2 的结点有 n 个,则该二叉树中有 (2) 个叶子结点。(分数:2.00)填空项 1:_38.常用的黑箱测试有等价分类法、 (3) 、因果图法和错误推测法 4 种。(分数:2.00)填空项 1:_39.数据库管理系统常见的数据模型有层次模型、网状模型和 (4) 3 种。(分数:2.00)填空项
17、 1:_40.在 E-R 图中,矩形表示 (5) 。(分数:2.00)填空项 1:_41.能够将文本框控件隐藏起来的属性是 (6) (分数:2.00)填空项 1:_42.下列程序计算 Sn 的值。Sn=a+aa+aaa+aaaa,其中最后一项为 n 个 a。例如,a=5,n=4 时,则 Sn=5+55+555+5555。请在空白处填入适当的内容,将程序补充完整。Private Sub Command1_Click()Dim a As Integer,n As Integer, Cout As IntegerDim Sn As LongTn As LongCout=1Sn=0Tn=0a=Inpu
18、tBox(“请输入 a 的值:”)(7) DoTn=Tn*10+aSn=Sn+TnCout=Cout+1(8) Print anSnEnd Sub(分数:2.00)填空项 1:_43.在 n 个运动员中选出任意 r 个人参加比赛,有很多种不同的选法,选法的个数可以用公式计算,下图窗体中 3 个文本框的名称依次是 Text1、Text2、Text3。程序运行时,在 Text1、Text2 中分别输入 n 和r 的值,单击 Command1 按钮即可求出选法的个数,并显示在 Text3 文本框中。请填空。(分数:2.00)填空项 1:_44.有如下 Sub 过程:Sub s(x As Single
19、,y As Single)t=XX=t/yy=t Mod yEnd Sub在窗体上添加一个命令按钮,然后编写如下事件过程:Private Sub Form_Click)Dim a As SingleDimb As Singlea=5b=4call S (a,b)Print a,bEnd Sub则程序运行后,单击命令按钮,输出的结果为 (10) 。(分数:2.00)填空项 1:_45.下列程序段的执行结果为 (11) 。Dim A(10,10)For i=2 To 4For i=4 To SA(i,j)=i*jNextNextPrint A(2,5)+A(3,4)+A(4,5)(分数:2.00)
20、填空项 1:_46.(-1)*Sgn-100+Int(Rnd*100)的值是 (12) 。(分数:2.00)填空项 1:_47.下列事件过程的功能是:建立一个名为 Data1 的随机文件,存放角度值及这些角度的正弦函数值和余弦函数值,角度为 1,2,3,90。请在空白处填入适当的内容,将程序补充完整。Private Type AngK As IntegerSinx As SingleCosx As SingleEnd TypeDim Ksc As AngPrivate Sub Form_Click()Dim Y As SingleOpen (13) Y=3.14159/180For i=1 T
21、o 90Ksc.K=iKsc.Sinx=Sin(i*Y)Ksc.Cosx=Cos(i*Y)(14) NextClose#2End Sub(分数:2.00)填空项 1:_48.下列程序的功能是:将数据 1,2,8 写入顺序文件 Num.txt 中,请补充完整。Private Sub Form_Click()Dim i As IntegerOpen “Num.txt“For Output As#1For i=1 To 8(15) NextClose#1End Sub(分数:2.00)填空项 1:_二级 VISUAL+BASIC 笔试-414 答案解析(总分:96.00,做题时间:90 分钟)一、选
22、择题(总题数:35,分数:70.00)1.栈和队列的共同特点是( )。A) 都是先进先出 B) 都是先进后出C) 只允许在端点处插入和删除元素 D) 没有共同点(分数:2.00)A.B.C. D.解析:解析 考查栈和队列概念的掌握。栈和队列都是一种特殊的操作受限的线性表,只允许在端点处进行插入和删除。二者的区别是栈只允许在表的一端进行插入或删除操作,是一种“后进先出”的线性表;而队列只允许在表的一端进行插入操作,在另一端进行删除操作,是一种“先进先出”的线性表。2.线性表是一个( )。A) 有限序列,可以为空 B) 有限序列,不能为空C) 无限序列,可以为空 D) 无限序列,不能为空(分数:2
23、.00)A. B.C.D.解析:解析 线性表简称为表,是零个或多个元素的有穷序列,通常可以表示成 k0,k1,kn-1(n1)。表中所含元素的个数称为表的长度,长度为零的表称为空表。3.设有下列二叉树:(分数:2.00)A.B. C.D.解析:解析 本题考查二叉树的遍历。所谓二叉树的前序遍历(DLR)是指在访问根结点、遍历左子树与遍历右子树这三者中,首先访问根结点,然后遍历左子树,最后遍历右子树,并且,在遍历左右子树时,上述规则同样适用,即“根左右”,故该二叉树的前序遍历结果为“ATBZXCYP”。4.下列叙述中,不属于软件需求规格说明书的作用的是( )。A) 便于用户、开发人员进行理解和交流
24、B) 反映出用户问题的结构,可以作为软件开发工作的基础和依据C) 作为确认测试和验收的依据D) 便于开发人员进行需求分析(分数:2.00)A.B.C.D. 解析:解析 软件需求规格说明书(Software Requirement Specification, SRS)是需求分析阶段的最后成果,是软件开发中的重要文档之一。它具有以下几个方面的作用:便于用户、开发人员进行理解和交流;反映出用户问题的结构,可以作为软件开发工作的基础和依据;作为确认测试和验收的依据。5.结构化程序设计主要强调的是( )。A) 程序的规模 B) 程序的效率C) 程序设计语言的先进性 D) 程序易读性(分数:2.00)A
25、.B.C.D. 解析:解析 结构化程序设计方法的主要原则可以概括为自顶向下、逐步求精、模块化及限制使用 goto语句,总的来说可使程序结构良好、易读、易理解、易维护。6.下列选项中,不属于模块间耦合的是( )。A) 数据耦合 B) 标记耦合 C) 异构耦合 D) 公共耦合(分数:2.00)A.B.C. D.解析:解析 模块之间的耦合程度反映了模块的独立性,也反映了系统分解后的复杂程度。按照耦合程度从强到弱分别是:内容耦合、公共耦合、外部耦合、控制耦合、标记耦合、数据耦合和非直接耦合。没有异构耦合这种方式。7.在数据管理技术的发展过程中,可实现数据共享的是( )。A) 人工管理阶段 B) 文件系
26、统阶段 C) 数据库系统阶段 D) 系统管理阶段(分数:2.00)A.B.C. D.解析:解析 数据管理经历了三个发展阶段:人工管理阶段、文件系统阶段和数据库系统阶段,其中,数据库系统阶段从整体角度看待和描述数据,数据不再面向某个应用而是面向整个系统,因此,数据可以被多个用户、多个应用共享使用,共享可以大大减少数据冗余,节约存储空间,避免数据的不一致性和不相容性,因此本题答案为 C)。8.下列叙述中,正确的是( )。A) 用 E-R 图能够表示实体集间一对一的联系、一对多的联系和多对多的联系B) 用 E-R 图只能表示实体集之间一对一的联系C) 用 E-R 图只能表示实体集之间一对多的联系D)
27、 用 E-R 图表示的概念数据模型只能转换为关系数据模型(分数:2.00)A. B.C.D.解析:解析 两个实体之间的联系实际上是实体集合的函数关系,这种函数关系可以有下面几种,即一对一的联系、一对多(或多对一)的联系和多对多的联系;概念模型便于向各种模型转换。由于概念模型不依赖于具体的数据库管理系统,因此,容易向关系模型、网状模型和层次模型等各种模型转换。9.有三个关系 R、S 和 T 如下。RBCDa0k1b1n1SBCDf3h2a0k1n2x1TBCDa0k1由关系 R 和 S 通过运算得到关系 T,则所使用的运算为( )。A) 并 B) 自然连接 C) 笛卡儿积 D) 交(分数:2.0
28、0)A.B.C.D. 解析:解析 关系 R 与 S 经交运算后所得到的关系 T 是由那些既在 R 内又在 S 内的有序组所组成。10.以下不属于对象的基本特点的是( )。A) 分类性 B) 多态性 C) 继承性 D) 封装性(分数:2.00)A.B.C. D.解析:解析 对象的基本特点:标识唯一性、分类性、多态性、封装性和模块独立性。11.窗体文件的扩展名是( )。A) .bas B) .cls C) .frm D) .res(分数:2.00)A.B.C. D.解析:bas 为程序模块文件的扩展名,.cls 为类模块文件的扩展名,.res 为相关资源文件的扩展名,.frm 为窗体文件的扩展名,
29、故选项 C)正确。12.关闭当前的工程并退出 Visual Basic 的快捷键是( )。A) Alt+B B) Alt+Q C) Alt+Shift D) Alt+a(分数:2.00)A.B. C.D.解析:解析 Alt+Q 关闭当前的工程并退出 Visual Basic。13.下列代码运行后输出结果是( )。Defstr B-EPrivate Sub Cornmand1_Click()B$=“123”C=“456”Print B+C$End SubA) 123456 B)“123456” C) 123+“456” D) 显示出错信息(分数:2.00)A.B.C.D. 解析:解析 “+”也可
30、以用做字符串连接符,它可以把两个字符串连接在一起,生成一个较长的字符串。但本题在调用“C=“456“”前未对变量 C 进行声明,故 C 默认为 Variant 型,后面又使用“Print B+C$”,语句不合法,因为 Variant 型变量后不允许加“$”。14.下面说法不正确的是( )。A) 变量名的长度不能超过 255 个字符B) 变量名可以包含小数点或者内嵌的类型声明字符C) 变量名不能使用关键字D) 变量名的第一个字符必须是字母(分数:2.00)A.B. C.D.解析:解析 在 Visual Basic 中,可以用名字来表示内存的位置,以便访问内存中的数据。有关变量命名的规则如下。名字
31、只能由字母、数字和下划线组成。名字的第一个字符必须是英文字母,最后一个字符可以是类型说明符。名字的有效字符为 255 个。不能用 Visual Basic 的保留字作变量名,但可以把保留字嵌入变量名中,同时变量名也不能是末尾带有类型说明符的保留字,例如变量 Print 和 Print$是非法的,而变量 Print_Number 则是合法的。15.文本框的 ScrollBars 属性设置为非零值,却没有效果,原因是( )。A) 文本框中没有内容 B) 文本框的 MultiLine 属性值为 FalseC) 文本框的 MultiLine 属性值为 True D) 文本框的 Locked 属性值为
32、True(分数:2.00)A.B. C.D.解析:解析 如果要设置文本框控件具有滚动条效果,需要设置其 ScrollBars 属性,并且还需将其MultiLine 属性设置为 True。设置 ScrollBars 属性为非零值后,还需要设置 MultiLine 属性为 True。16.设 A:“123456”,则表达式 Val(Left(A,4)+Mid(A,4,2)的值为( )。A) 123456 B) 123445 C) 5 D) 6(分数:2.00)A.B. C.D.解析:解析 Left(A,4)=“11234”,Mid(A,4,2)=“45”,Val(“1234”+“45”)=1234
33、45, 其 中,Left 和 Mid 均为字符串截取函数,“+”为字符串连接符。17.在窗体上画一个命令按钮,然后编写如下事件过程。Private Sub Command1_Click()For i=1 To 4x=4For j=1 To 2X=X+6NextNextPrint XEnd Sub程序运行后,单击命令按钮,输出结果是( )。A) 12 B) 13 C) 16 D)17(分数:2.00)A.B.C. D.解析:解析 观察程序,由于每次执行外层循环时 X 都被重新赋值,因此只要看到 i=4 时,执行内循环所得到的结果即可。18.要触发组合框的 DblClick 事件,只有将组合框的
34、Style 属性设置为( )。A) 0 B) 1 C) 2 D) 3(分数:2.00)A.B. C.D.解析:解析 组合框的事件依赖于其 Style 属性,只有 Style 属性设置为 1 时,才能接收 DblClick 事件,因此只有 B)选项正确。19.下列语句中,获得列表框 List1 中项目个数的语句是( )。A) X=List1.ListCount B) X=ListCount C) X=List1.ListIndex D) X=ListIndex(分数:2.00)A. B.C.D.解析:解析 List 控件的 ListCount 属性返回列表部分项目的个数。20.下列选项中不属于结
35、构化程序设计方法的主要原则的是( )。A) 自顶向下 B) 逐步求精C) 模块化 D) 可复用(分数:2.00)A.B.C.D. 解析:解析 结构化程序设计方法的主要原则是自顶向下,逐步求精,模块化,限制使用 goto 语句。可复用性是指软件元素不加修改和稍加修改可在不同的软件开发过程中重复使用的性质。软件可复用性是软件工程追求的目标之一,是提高软件生产效率的主要方法。面向对象的程序设计具有可复用性的优点。21.以下合法的变量名是( )。A) A%B B) Test1 C) 1cost D) And(分数:2.00)A.B. C.D.解析:解析 Visual Basic 中规定变量名的首字符必
36、须是字母,不能包含%、#、$字符,不能是Visual Basic 的保留字。22.阅读程序:Option Base 1Dim arr()As IntegerPrivate Sub Form_Click()Dim i As Integer,j As IntegerReDim arr(3,21For i=1 To 3Forj=1 To 2arr(i,j)=i*2+jNextNextReDim Preserve arr(3,4)For i=3 To 4arr(3,j)=j+9NextPrint arr(3,2)+arr(3,4)End Sub程序运行后,单击窗体,输出结果为( )。A) 21 B)
37、13 C) 8 D) 25(分数:2.00)A. B.C.D.解析:解析 每次使用 ReDim 语句都会使原来数组中的值丢失,也可以在 ReDim 后加 Preserve 参数来保留数组中的数据,但使用 Preserve 只能改变最后一维的大小,前面几维大小不能改变,而在本题中arr(3,2)赋值后为 8,arr(3,4)=4+9=13,故最后为 13+8=21。23.有如下程序:Private Sub Command1_Click()a$=“A WORKER IS HERE“X=Len(a$)For i=1 To X-1b$=Mid$(a$,i,3)If b$=“WOR“ Then S=S+
38、1NextPrint SEnd Sub单击命令按钮,程序运行结果为( )。A) 1 B) 2 C) 3 D) 5(分数:2.00)A. B.C.D.解析:解析 此题考查字符串函数与循环语句的嵌套使用。S 用来记录找到指定字符串的次数,在“A WORKER IS HERE”中只出现一次,所以返回值是 1。24.Mid(“Hello Everyone“,7,3)的执行结果是( )。A) yon B) every C) Eve D) one(分数:2.00)A.B.C. D.解析:解析 Mid 函数的格式是 Mid$(字符串,p,n),从第 P 个字符开始,向后截取 n 个字符。25.执行下列程序段
39、后,输出的结果是( )。For k1=0 To 4y=20For k2=0 To 3y=10For k3=0 To 2y=y+10Next k3,k2,k1Print yA) 90 B) 60 C) 40 D) 10(分数:2.00)A.B.C. D.解析:解析 这是一个三重循环嵌套的程序。多重 For 循环的执行过程是外层循环的循环控制变量每取一个值,内循环的循环控制变量要取遍所有的值。这个程序中最外两层循环的最后一次循环执行k1=4,k2=3 时,都要再执行一次 Y=10,不管 Y 以前取得何值,Y 都要重新取得初值 10,这时再执行 1 次内循环。内层循环体要执行 3 次,即加 3 次
40、10。y 最终的值是 40。26.在窗体上画一个命令按钮,然后编写如下事件过程。Private Sub Command1_Click()For i=I To 4X=4Fori=1 To 3X=3For k=1 To 2X=X+6NextNextNextPrint XEnd Sub程序运行后,单击命令按钮,输出的结果是( )。A) 7 B) 15 C) 157 D) 538(分数:2.00)A.B. C.D.解析:解析 本题的难点在于循环体外的变量初值问题。虽然该段程序中有三重循环,但仔细观察发现,X=3 将前面的内容替代了,只剩下最后的结果,即 3+6+6=15。27.定义有 5 个整数型元素
41、的数组,正确的语句是( )。A) Dim a(4) As Integer B) Option Base 1:Dim a(5)C) Dim a“水”:NextPrintNextA) *B) *C) *D) *(分数:2.00)A.B.C. D.解析:解析 Tab 函数格式是 Tab(n)。Tab 函数把光标移动到参数 n 指定的位置,从这个位置开始输出信息。29.下列程序的执行结果为( )。Private Sub Command1_Click()Dim FirStr As StringFirStr=“abcdef“Print Pat(FirStr)End SubPrivate Function
42、Pat(xStr As String) As StringDim tempStr As String, strLen As IntegertempStr=“strLen=Len(xStr)i=1Do While iLen(xStr)-3tempStr=tempStr+Mid(xStr,i,1)+Mid(xStr, strLen -1+1,1)i=i+1LoopPat=tempStrEnd FunctionA) abcdef B) afbecd C) fedcba D) defabc(分数:2.00)A.B. C.D.解析:解析 主调函数最终输出值是 Pat(FirStr)过程的返回值,这就需要
43、调用函数过程 Pat。被调过程 Pat 的参数 XStr 从主调函数中收到实参 FirStr 传来的值“abcdef”,过程 Pat 开始声明了两个变量:一个是 String 型的 tempStr;另一个是 Integer 型的 strLen。语句 tempStr=“”,strLen=Len(XStr)的功能是为变量 tempStr 赋空值,变量 strLen 的值就是 XStr 的长度,此题为 6。程序代码执行 Do WhileLoop 的循环语句。第 1 次循环结束后,tempStr=“af”。第 2 次循环,i=2,i=3 成立,继续执行循环体,tempStr=“afbe”。第 3 次循
44、环,i=3,i=3 成立,继续执行循环体tempStr=“afbecd”。第 4 次循环,i=4,i=3 不成立,则跳出循环体,执行语句 Pat=tempStr。所以最终 Pat(FirStr)=“afbecd”。30.声明一个变量为局部变量应该用( )。A) Global B) Private C) Static D) Public(分数:2.00)A.B.C. D.解析:解析 根据变量的定义位置和所使用的定义变量的语句不同,Visual Basic 中的变量可以分为局部变量、模块变量和全局变量。模块级变量在模块部分用 Private 或 Dim 语句声明;全局变量必须用Public 或 G
45、lobal 语句声明;局部变量在过程中用 Dim 或 Static 语句声明。31.编写如下事件过程。Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)Print Chr(KeyCode)End SubPrivate Sub Form_KeyPress(KeyAscii As Integer)Print Chr(KeyAscii)End Sub在一般情况下(即不按住 Shift 键和锁定大写键时)运行程序,若按 T 键,则程序输出的结果是( )。A) T T B) t T C) T C D) t t(分数:2.00)A.
46、B.C. D.解析:解析 请复习 KeyPress 事件和 KeyDown 事件各参数的含义。32.下列对变量的定义中,不能定义 a 为变体变量的是( )。A) Dim a As Double B) Dim a As VariantC) Dim a D) a=24(分数:2.00)A. B.C.D.解析:解析 本题的难点是变体类型变量的概念。任何未经说明的变量,VisualBasic 都将自动设置为变体类型变量。33.以下事件过程可以将打开对话框的标题改为“新时代”的是( )。A) Private Sub Command2_Click()CommonDialoglDialogTitle=“新时
47、代”CommonDialogl.ShowOpenEnd SubB) Private Sub Command2_Click()CommonDialog1DialogTitle=“新时代”CommonDialog1.ShowFontEnd SubC) Private Sub Command2_Click()CommonDialog1.DialogTitle=“新时代”CommonDialog1.ShowEnd SubD) Private Sub Command2_Click()CommonDialog1DialogTitle=“新时代“CommonDialog1.ShowColorEnd Sub(
48、分数:2.00)A. B.C.D.解析:解析 首先,设置标题属性用 DialogTitle 属性,四个选项都一样,所以这个不是区别;再看方法,选项 A)用的是 ShowOpen 方法,即打开对话框,所以是正确的;选项 B)用的是 ShowFont 方法,即字体设置对话框,不符合本题的意思,不正确;选项 C)用的是 Show 方法,但是对话框没有此方法,所以也不正确;选项 D)用的是 ShowColor 方法,是颜色选择对话框,所以也不符合本题的意思。34.当程序运行时,在窗体上单击鼠标,在以下事件中,窗体不能响应的是( )。A) MouseDOWP B) MouseUP C) Load D) Click(分数:2.00)A.B.C. D.解析:解析 Load(加载)事件是在应用程序开始运行时加载的。35.要获得当前驱动器应使用的驱动器列表框的属性是( )。A) Path B) Drive C) Dir D) Patt