1、二级 VISUAL+BASIC 笔试-24 及答案解析(总分:114.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.程序设计语言的基本成分是数据成分、运算成分、控制成分和(分数:2.00)A.对象成分B.变量成分C.语句成分D.传输成分2.单个用户使用的数据视图的描述称为(分数:2.00)A.外模式B.概念模式C.内模式D.存储模式3.下列程序的执行结果为Private Sub Command1_Click()Dim s1 As String,s2 As Strings1=“abcdef“Call Invert(s1,s2)Print s2End SubPriva
2、te Sub Invert(ByVal xstr As String,ystr As String)Dim tempstr As Stringi=Len(xstr)Do While i=1tempstr=tempstr + Mid(xstr,i,1)i=i - 1Loopystr=tempstrEnd Sub(分数:2.00)A.fedcbaB.abcdefC.afbecdD.defabc4.设有如下过程:Sub ff(x,y,Z,)x=y+zEnd Sub以下所有参数的虚实结合都是传址方式的调用语句是(分数:2.00)A.Call ff(5,7,z)B.Call ff(x,y,z)C.Cal
3、l ff(3+x,5+y,z)D.Call ff(x+Y,x-y,z)5.树是结点的集合,它的根结点数目是(分数:2.00)A.有且只有 1B.1 或多于 1C.0 或 1D.至少 26.下列语句的输出结果为Print Format$(5689.36,“000,000.000“)(分数:2.00)A.5,689.36B.5,689.360C.5,689.3D.005,689.3607.如下图所示的两个窗体:(分数:2.00)A.B.C.D.8.下列叙述中,不属于软件需求规格说明书的作用的是(分数:2.00)A.便于用户、开发人员进行理解和交流B.反映出用户问题的结构,可以作为软件开发工作的基础
4、和依据C.作为确认测试和验收的依据D.便于开发人员进行需求分析9.SQL 语言又称为(分数:2.00)A.结构化定义语言B.结构化控制语言C.结构化查询语言D.结构化操纵语言10.下列程序段的执行结果为a=6For k=1 To 0a=a + kNext kPrint k;a(分数:2.00)A.-1 6B.-1 16C.1 6D.11 2111.Visual Basic 集成的主窗口中不包括(分数:2.00)A.属性窗口B.标题栏C.菜单栏D.工具栏12.下列不属于软件工程的 3 个要素的是(分数:2.00)A.工具B.过程C.方法D.环境13.下列程序段的执行结果为a=1b=1For I=
5、1 To 3f=a + ba=bb=fPrint f;Next I(分数:2.00)A.2 3 6B.2 3 5C.2 3 4D.2 2 814.设置命令按钮的属性时,只有将何属性设置为 1,Picture 属性才有效,否则无效?(分数:2.00)A.StyleB.CaptionC.EnabledD.Default15.激活菜单栏的快捷键是(分数:2.00)A.F10B.F4C.F5D.Ctrl16.通常情况下,垂直滚动条的值是(分数:2.00)A.由下往上递增B.由上往下递增C.由左到右递增D.由右到左递增17.执行下列程序段后,输出的结果是For k1=0 TO 4y=20For k2=0
6、 TO 3y=10For k3=0 TO 2y=y+10Next k3Next k2Next k1Print y(分数:2.00)A.90B.60C.40D.1018.能够获得一个文本框中被选取文本的内容的属性是(分数:2.00)A.TextB.LengthC.SeltextD.SelStart19.在设计程序时,应采纳的原则之一是(分数:2.00)A.不限制 goto 语句的使用B.减少或取消注解行C.程序越短越好D.程序结构应有助于读者理解20.设有数组定义语句:Dim a(5)As Integer,List1 为列表框控件。下列给数组元素赋值的语句错误的是(分数:2.00)A.a(3)
7、=3B.a(3) =inputbox(“input data“ )C.a(3) =List1.ListlndexD.a=Array(1,2,3,4,5,6)21.如果进栈序列为 e1,e2,e3,e4,则可能的出栈序列是(分数:2.00)A.e3,e1,e4,e2B.e2,e4,e3,e1C.e3,e4,e1,e2D.任意顺序22.将 E-R 图转换到关系模式时,实体与联系都可以表示成(分数:2.00)A.属性B.关系C.键D.域23.下列各种形式的循环中,输出“*”的个数最少的循环是(分数:2.00)A.a=5:b=8DoPrint“*“a=a+1Loop While abB.a=5:b=8
8、DoPrint “*“a=a+1Loop Until abC.a=5:b=8Do Until a-bPrint“*“b=b+1LoopD.a=5:b=8Do Until abPrint“*“a=a+1Loop24.下列程序段的执行结果为a=1b=0Select Case aCase 1Select Case bCltse 0Print“*0*“Case 1Print“*1*“End SelectCase 2Print“*2*“End Select(分数:2.00)A.*0*B.*1*C.*2*D.025.单击一次命令按钮后,下列程序的执行结果是Private Sub Command1_Clic
9、k()s=P(1) + P(2) + P(3) + P(4)Print sEnd SubPublic Function P(N As Integer)Static SumFor i=1 To NSum=Sum + iNext iP=SumEnd Function(分数:2.00)A.15B.25C.35D.4526.如果要将窗体中的某个命令按钮设置成无效状态,应该设置命令按钮的哪一个属性?(分数:2.00)A.ValueB.VisibleC.EnabledD.Default27.已知一棵二叉树前序遍历和中序遍历分别为 ABDEGCFH 和 DBGEACHF,则该二叉树的后序遍历为(分数:2.0
10、0)A.GEDHFBCAB.DGEBHFCAC.ABCDEFGHD.ACBFEDHG28.下面程序段执行结果为x=Int(Rnd() +4)Select Case xCase 5Print“excellent“Case 4Print“good“Case 3Print“pass“Case ElsePrint“fail“End Select(分数:2.00)A.excellentB.goodC.passD.fail29.阅读下列程序:Private Sub Command1_Crick()Dim i As Integer,k As Integerk=2For i=1 TO 3Print H(k);
11、Next iEnd SubFunction H(j As Integer)a=0Static ba=a + 1b=b + 1H=a * b + jEnd Function程序运行后,单击命令按钮输出结果是(分数:2.00)A.234B.345C.567D.35630.下列说法错误的是(分数:2.00)A.方法是对象的一部分B.在凋用方法时,对象名是不可缺少的C.方法是一种特殊的过程和函数D.方法的调用格式和对象属性的使用格式相同31.单击命令按钮时,下列程序的执行结果为Private Sub Command1_Click()Dim x As Integer,y As Integerx=12:Y
12、=32Call PCS(x,y)Print x;yEnd SubPublic Sub PCS(ByVal n As Integer,ByVal m As Integer)n=n Mod 10m=m Mod 10End Sub(分数:2.00)A.1232B.232C.23D.12332.下列有关子菜单的说法中,错误的是(分数:2.00)A.除了 Click 事件之外,菜单项不可以响应其他事件B.每个菜单项都是一个控件,与其他控件一样也有其属性和事件C.菜单项的索引号必须从 1 开始D.菜单的索引号可以不连续33.建立一个新的标准模块,应该选择哪个菜单下的“添加模块”命令?(分数:2.00)A.
13、“工程”菜单B.“文件”菜单C.“工具”菜单D.“编辑”菜单34.下列程序段的执行结果为a=95If a60 Then I=1If a70 Then I=2If a80 Then I=3If a90 Then I=4Print“I=“;I(分数:2.00)A.I=1B.I=2C.I=3D.I=435.下列过程定义语句中,形参个数为不确定数量的过程是(分数:2.00)A.Private Sub Pro3(x As Double,y As Single)B.Private Sub Pro3(Arr(3),Option x,Option y)C.Private Sub Pro3(ByRef X,By
14、Val y,Art()D.Private Sub Pro3(ParamArray Arr()二、填空题(总题数:11,分数:44.00)36.数据结构分为逻辑结构与存储结构,线性链表属于 1 。(分数:2.00)填空项 1:_37.在面向对象方法中,类之间共享属性和操作的机制称为 1。(分数:2.00)填空项 1:_38.耦合和内聚是评价模块独立性的两个主要标准,其中 1 反映了模块内各成分之间的联系。(分数:2.00)填空项 1:_39.一个项目具有一个项目主管,一个项目主管可管理多个项目,则实体“项目主管”与实体“项目”的联系属于: 1 的联系。(分数:2.00)填空项 1:_40.数据库
15、设计分为以下 6 个设计阶段:需求分析阶段、 1、逻辑设计阶段、物理设计阶段、实施阶段、运行和维护阶段。(分数:2.00)填空项 1:_新建一个工程,内有两个窗体,窗体 Form1 上有一个命令按钮 Command1,单击该按钮,Form1 窗体消失,显示 Form2 窗体,程序如下:Private Sub Command1_Click()6 Form2. 7 End Sub试补充完整。(分数:6.00)填空项 1:_填空项 1:_41.用户可以用 8 语句定义自己的数据类型。(分数:2.00)填空项 1:_42.在窗体上画一个命令按钮,然后编写如下事件过程:Private Sub Comma
16、nd1_Click()x=0Do Until x= -1a=InputBox(“请输人第一个数字 a 的值“)a=Val(a)b=InputBox(“请输入第二个数字 b 的值“)b=Val(b)x=InputBox(“请输入第三个数字 x 的值“)x=Val(x)a=a + b + xLoopPrint aEnd Sub在程序运行后,单击命令按钮,在对话框中分别输入 5、4,8、5、8、-1,输出结果为 9 。(分数:2.00)填空项 1:_当对象得到焦点时,会触发 10 事件,当对象失去焦点时将触发 11 事件。(分数:8.00)填空项 1:_填空项 1:_把窗体的 KeyPreView
17、属性设置为 True,并编写如下两个事件过程:Private Sub Form_KeyDown(KeyCode As Integer,Shift As Integer)Print KeyCodeEnd SubPrivate Sub Form_KeyPress(KeyAscii As Integer)Print KeyAsciiEnd Sub程序运行后,如果按下 B 键,则在窗体上输出的数值是 12 和 13 。(分数:8.00)填空项 1:_填空项 1:_在文件对话框中,假定有一个名为“fc.exe”的文件,它位于“d:/PP”目录下,则“FileName”属性的值为 14 ;FileTitl
18、e 属性的值为 15 。(分数:8.00)填空项 1:_填空项 1:_二级 VISUAL+BASIC 笔试-24 答案解析(总分:114.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.程序设计语言的基本成分是数据成分、运算成分、控制成分和(分数:2.00)A.对象成分B.变量成分C.语句成分D.传输成分 解析:解析 程序设计语言是用于书写计算机程序的语言,其基本成分有以下 4 种:数据成分,用来描述程序中的数据;运算成分,描述程序中所需的运算;控制成分,用来构造程序的逻辑控制结构;传输成分,定义数据传输成分,如输入/输出语言。2.单个用户使用的数据视图的描述称为(
19、分数:2.00)A.外模式 B.概念模式C.内模式D.存储模式解析:解析 选项 A)正确,外模式是用户的数据视图,也就是用户所见到的数据模式;选项 B)不正确,全局数据视图的描述称为概念模式,即数据库中全部数据的整体逻辑结构的描述;选项 C)不正确,物理存储数据视图的描述称为内模式,即数据库在物理存储方面的描述;选项 D)不正确,存储模式即为内模式。3.下列程序的执行结果为Private Sub Command1_Click()Dim s1 As String,s2 As Strings1=“abcdef“Call Invert(s1,s2)Print s2End SubPrivate Sub
20、 Invert(ByVal xstr As String,ystr As String)Dim tempstr As Stringi=Len(xstr)Do While i=1tempstr=tempstr + Mid(xstr,i,1)i=i - 1Loopystr=tempstrEnd Sub(分数:2.00)A.fedcba B.abcdefC.afbecdD.defabc解析:解析 被调过程 Inverf 的参数 xstr、ystr 从主调函数中收到实参 s1、s2 传来的值“abcdef”,过程 Invert 开始声明了两个变量,都是 String 型的:xstr,ystr。i=Le
21、n(xStr)语句的功能是:i 的值就是 xstr 的长度,此题为 6。程序代码执行 DoWhileLoop 的循环语句。循环体为 tempstr = tempstr + Mid(xstr,i,1),其中变量是 i,由 i=Len(xstr)开始的,每循环一次减 1此程序段的最后输出的是字符串 s1 的反向输出,所以正确答案是选项 C)。4.设有如下过程:Sub ff(x,y,Z,)x=y+zEnd Sub以下所有参数的虚实结合都是传址方式的调用语句是(分数:2.00)A.Call ff(5,7,z)B.Call ff(x,y,z) C.Call ff(3+x,5+y,z)D.Call ff(
22、x+Y,x-y,z)解析:解析 题目中 Sub 过程的形式参数都没有特别指明是传址方式还是传值方式,隐含的是传址。实际调用时,还要根据实参的形式,才能确定是传值还是传址的数据传送方式。若实参为常量或表达式,则为传值的传递方式;若实参是变量名或数组名,则为传值的传递方式。5.树是结点的集合,它的根结点数目是(分数:2.00)A.有且只有 1 B.1 或多于 1C.0 或 1D.至少 2解析:解析 树是一个或多个结点组成的有限集合,其中一个特定的结点称为根,其余结点分为若干个不相交的集合。每个集合同时又是一棵树。树有且只有 1 个根结点。6.下列语句的输出结果为Print Format$(5689
23、.36,“000,000.000“)(分数:2.00)A.5,689.36B.5,689.360C.5,689.3D.005,689.360 解析:解析 用 Format$()函数可以将数值按“格式字符串”指定的格式输出,包括在输出字符串前面加$,字符串后面补 0 及千位分隔符等。“格式字符串”是一个常量或变量,它由专门的格式说明符组成,由这些字符决定数据项的显示格式,并指定显示区域的长度,当格式字符串为常量时,必须放存双引号中,格式说明符及作用如下表所示。字 符 作 用 # 数字:不在前面或后面补 0 0 数字:在前面或后面补 0 . 小数点 千位分隔符 % 百分比符号 $ 美元符号 - 、
24、+ 负、正号 E+、E- 指数符号 综合上述分析,本题是指定 5689.36 按给定“000,000.000”格式输出,所以不足的部分补 0,输出结果为“005,689.360”,正确答案为选项 D)。7.如下图所示的两个窗体:(分数:2.00)A. B.C.D.解析:解析 此题考查的多窗体的操作,用 Show 方法可以显示指定窗体。其格式为:窗体名称. Show 模式如果省略窗体名称,表示是当前窗体,此题本意是利用窗体 1 中的命令按钮来控制显示窗体 2,故应该使用 Form2.Show 语句;而“模式”参数为可选项,可取 0、1 两种值,模式为 1 时,表示窗体是“模式”窗体,即程序运行时
25、只能对此窗体设置或操作,对其他窗口的操作不起作用;而模式为 0 时,即可同时操作多个窗口;综上所述只有选项 A)的事件过程正确;选项 B)没有指定 Form2 窗体,所以不正确;选项 C)与选项 B)的错误一样;选项 D)语句语法不对,对方法的引用,窗体应放在方法前面。8.下列叙述中,不属于软件需求规格说明书的作用的是(分数:2.00)A.便于用户、开发人员进行理解和交流B.反映出用户问题的结构,可以作为软件开发工作的基础和依据C.作为确认测试和验收的依据D.便于开发人员进行需求分析 解析:解析 软件需求规格说明书(Software Requirement Specification,SRS)
26、是需求分析阶段的最后成果,是软件开发中的重要文档之一。它有以下几个方面的作用:便于用户、开发人员进行理解和交流;反映出用户问题的结构,可以作为软件开发工作的基础和依据;作为确认测试和验收的依据。9.SQL 语言又称为(分数:2.00)A.结构化定义语言B.结构化控制语言C.结构化查询语言 D.结构化操纵语言解析:解析 结构化查询语言(Structured Query Language,SQL)是集数据定义、数据操纵和数据控制功能于一体的数据库语言。10.下列程序段的执行结果为a=6For k=1 To 0a=a + kNext kPrint k;a(分数:2.00)A.-1 6B.-1 16C
27、.1 6 D.11 21解析:解析 此题是考查 For 循环结构语句。For 循环有两种格式,其中一种格式是:For 循环变量=初值 To 终值 Step步长语句Exit For语句Next 循环变量此循环语句的执行过程为:“循环变量”首先取得“初值”,检查是否超过“终值”,如果超过,就一次也不循环而跳出循环,属于“先检查后执行”的类型。现在来看程序段,For k=1 To 0 中,初值为 1,终值为 0,显然当“循环变量”首先取得“初值”1,检查后超过“终值”0,所以一次也不执行,即最后执行 Print 时,k=1,a=6。所以选项 C)为正确答案。11.Visual Basic 集成的主窗
28、口中不包括(分数:2.00)A.属性窗口 B.标题栏C.菜单栏D.工具栏解析:解析 在 Visual Basic 集成的主窗口又称为设计窗口,它由标题栏、菜单栏、工具栏等几部分组成;标题栏是位于屏幕的顶部的水平条,它显示应用程序的名字,启动 Visual Basic 后,标题栏中出现的信息是“工程 1Microsoft Visual Basic设计”;菜单栏位于标题栏之下,提供了开发、调试应用程序的工具,包括“文件”菜单、“编辑”菜单、“试图”菜单、“工程”菜单等;工具栏位于菜单栏的下面,它以图标形式提供了部分常用命令的功能;属性窗口不在主窗口的范围之内。12.下列不属于软件工程的 3 个要素
29、的是(分数:2.00)A.工具B.过程C.方法D.环境 解析:解析 软件工程包括 3 个要素,即方法、工具和过程。方法是完成软件工程项目的技术手段;工具支持软件的开发、管理、文档生成;过程支持软件开发的各个环节的控制、管理。13.下列程序段的执行结果为a=1b=1For I=1 To 3f=a + ba=bb=fPrint f;Next I(分数:2.00)A.2 3 6B.2 3 5 C.2 3 4D.2 2 8解析:解析 本题考查的是 For 循环结构语句,现在看程序段是如何运行的:开始 a=1,b=1。For 循环中步长默认值为 1,循环变量 I 的初值为 1,终值为 3,所以此循环结构
30、可以循环 3 次。第一次循环后,结果为:f=2,a=1,b=2第二次循环后,结果为:f=3,a=2,b=3第三次循环后,结果为:f=5,a=3,b=5每循环一次,输出 f 当前值,循环 3 次即输出 3 个 f 值分别为 2,3,5。所以正确答案是选项 B)。14.设置命令按钮的属性时,只有将何属性设置为 1,Picture 属性才有效,否则无效?(分数:2.00)A.Style B.CaptionC.EnabledD.Default解析:解析 Picture 属性是用来为命令按钮指定一个图形,为了使用该属性,必须将 Style 属性设置为 1(图形格式),因为 Style 属性可以用于多种控
31、件,当用于命令按钮时,可以有两种值:0 或 1。当取0 时,控件只显示文本,不显示相关图形;当取 1 时,控件除了显示文本,还显示相关图形。15.激活菜单栏的快捷键是(分数:2.00)A.F10 B.F4C.F5D.Ctrl解析:解析 在 Visual Basic 中,F10 键用来激活菜单栏,F4 激活属性窗口,F5 启动运行程序,Ctrl作为辅助键必须和其他键一起使用才能起作用。16.通常情况下,垂直滚动条的值是(分数:2.00)A.由下往上递增B.由上往下递增 C.由左到右递增D.由右到左递增解析:解析 一般情况下,垂直滚动条的值由上往下递增,最上端代表最小值,最下端代表最大值;水平滚动
32、条的值从左到右递增,最左端代表最小值,最右端代表最大值。因此选项 B)是正确的。17.执行下列程序段后,输出的结果是For k1=0 TO 4y=20For k2=0 TO 3y=10For k3=0 TO 2y=y+10Next k3Next k2Next k1Print y(分数:2.00)A.90B.60C.40 D.10解析:解析 这是一个三重循环嵌套的程序。多重 For 循环的执行过程是:外层循环的循环控制变量每取一个值,内循环的循环控制变量要取遍所有的值。这个程序中最外两层循环的最后一次循环执行时k1=4,k2=3,都要再执行一次 y=10,不管 y 以前取得何值,y 都要重新取得
33、初值 10,这时再执行一次内循环。内层循环体要执行 3 次,即加 3 次 10。y 最终的值是 40。18.能够获得一个文本框中被选取文本的内容的属性是(分数:2.00)A.TextB.LengthC.Seltext D.SelStart解析:解析 获得文本框中的文本需要用到 SelStart 属性(文本选取开始位置)、SelLength 属性(文本选取长度)和 SelTFext 属性(选取的文本内容)。19.在设计程序时,应采纳的原则之一是(分数:2.00)A.不限制 goto 语句的使用B.减少或取消注解行C.程序越短越好D.程序结构应有助于读者理解 解析:解析 滥用 goto 语句将使程
34、序流程无规律,可读性差,因此 A)不选;注解行有利于对程序的理解,不应减少或取消,B)也不选;程序的长短要依照实际情况而论,而不是越短越好,C)也不选。20.设有数组定义语句:Dim a(5)As Integer,List1 为列表框控件。下列给数组元素赋值的语句错误的是(分数:2.00)A.a(3) =3B.a(3) =inputbox(“input data“ )C.a(3) =List1.ListlndexD.a=Array(1,2,3,4,5,6) 解析:解析 Array 函数只能给变体变量类型数组初始化,a 为整型数组,所以选项 D)错误。21.如果进栈序列为 e1,e2,e3,e4
35、,则可能的出栈序列是(分数:2.00)A.e3,e1,e4,e2B.e2,e4,e3,e1 C.e3,e4,e1,e2D.任意顺序解析:解析 由栈“后进先出”的特点可知:A)中 e1 不可能比 e2 先出,C)中 e3 不可能比 e4 先出,且e1 不可能比 e2 先出,D)中栈是先进后出的,所以不可能是任意顺序。B)中出栈过程如下图所示。*22.将 E-R 图转换到关系模式时,实体与联系都可以表示成(分数:2.00)A.属性B.关系 C.键D.域解析:解析 数据库逻辑设计的主要工作是将 E-R 图转换成指定 RDBMS 中的关系模式。首先,从 E-R 图到关系模式的转换是比较直接的,实体与联
36、系都可以表示成关系,E-R 图中属性也可以转换成关系的属性。实体集也可以转换成关系。23.下列各种形式的循环中,输出“*”的个数最少的循环是(分数:2.00)A.a=5:b=8DoPrint“*“a=a+1Loop While abB.a=5:b=8DoPrint “*“a=a+1Loop Until abC.a=5:b=8Do Until a-bPrint“*“b=b+1Loop D.a=5:b=8Do Until abPrint“*“a=a+1Loop解析:解析 DoLoop 循环的执行规则是:DoLoop While | Until形式的循环先执行循环体,然后再进行条件判断;Do Whi
37、le | UntilLoop 形式的循环是先进行条件判断,然后决定是否执行循环体。While 的含义是,若为“真”,则执行循环体;若为“假”,则结束循环。Until 的含义是,若为“假”,则执行循环体;若为“真”,则结束循环。根据以上分析,选项 A)输出 3 个“*”,选项 B)输出1 个“*”,选现 C)没有输出“*”,选项 D)输出 4 个“*”。24.下列程序段的执行结果为a=1b=0Select Case aCase 1Select Case bCltse 0Print“*0*“Case 1Print“*1*“End SelectCase 2Print“*2*“End Select(分
38、数:2.00)A.*0* B.*1*C.*2*D.0解析:解析 此题考查的是 Select Case 结构。Select Case 结构的一般格式为:Select Case exprCase expr1clause 1Case expr2cause 2Case elseclause nEnd Select其中 expr 是测试表达式,如果满足 exprn 就执行这条语句,然后退出,因为 a=1,b=0,所以执行语句Print“*0*“。25.单击一次命令按钮后,下列程序的执行结果是Private Sub Command1_Click()s=P(1) + P(2) + P(3) + P(4)Pr
39、int sEnd SubPublic Function P(N As Integer)Static SumFor i=1 To NSum=Sum + iNext iP=SumEnd Function(分数:2.00)A.15B.25C.35 D.45解析:解析 在被调用过程中,有这样的语句“Static Sum”,因为变量 Sum 是局部变量,局部变量除了可以用:Dim 语句声明外,还可用 Static 语句将变量声明为静态变量,它在程序运行过程中可保留变量的值,这就是说每次调用过程时,用 Static 说明的变量保持原来的值。具体过程分析如下。调用 P(1),所以在被调过程中 N=1,执行
40、For Next 循环,P(1)=Sum=1;调用 P(2),所以在被调过程中 N=2,执行 For Next 循环,P(2)=Sum=4;调用 P(3),所以在被调过程中 N=3,执行 For Next 循环,P(3)=Sum=10;调用 P(4),所以在被调过程中 N=4,执行 For Next 循环,P(4)=Sum=20;不难看出,最后输出的结果 S 值应为 1+4+10+20=35,所以选项 C)正确。26.如果要将窗体中的某个命令按钮设置成无效状态,应该设置命令按钮的哪一个属性?(分数:2.00)A.ValueB.VisibleC.Enabled D.Default解析:解析 在
41、Visual Basic 中,控制控件有效性的属性是 Enabled,若设置为 True,则处于有效状态,如果设置成 False,则处于无效状态,所以选项 C)是正确的;Visible 属性是控制空间可见性的,有两种值,即 True 和 False,在默认情况下是 True;如果将对象的 Visible 值设为:False,窗体和控件在设计阶段仍可见,只有运行时才隐藏,所以选项 B)不正确;Default 是决定窗体的默认命令的命令按钮的属性,另外,一个窗体只能有一个默认命令按钮,所以选项 D)也不正确;Value 属性在不同的控件中有不同的作用。27.已知一棵二叉树前序遍历和中序遍历分别为
42、ABDEGCFH 和 DBGEACHF,则该二叉树的后序遍历为(分数:2.00)A.GEDHFBCAB.DGEBHFCA C.ABCDEFGHD.ACBFEDHG解析:解析 利用前序和中序遍历的方法可以确定二叉树的结构,具体步骤为:前序遍历的第一个结点 A 为树的根结点;中序遍历中 A 的左边的结点为 A 的左子树,A 右边的结点为 A 的右子树;再分别对 A 的左右子树进行上述两步处理,直到每个结点都找到正确的位置。28.下面程序段执行结果为x=Int(Rnd() +4)Select Case xCase 5Print“excellent“Case 4Print“good“Case 3Pri
43、nt“pass“Case ElsePrint“fail“End Select(分数:2.00)A.excellentB.good C.passD.fail解析:解析 我们可以看到 x=Int(Rnd()+4)语句,其中,Rnd 是用来产生随机数的,其值在 01 之间,而在(Rnd()+4)前面有 Int 进行强制转换,所以 x 总为 4,Select Case xEnd Select 语句体中的 Case 4 Print“good“语句。所以正确答案是选项 B)。29.阅读下列程序:Private Sub Command1_Crick()Dim i As Integer,k As Intege
44、rk=2For i=1 TO 3Print H(k);Next iEnd SubFunction H(j As Integer)a=0Static ba=a + 1b=b + 1H=a * b + jEnd Function程序运行后,单击命令按钮输出结果是(分数:2.00)A.234B.345 C.567D.356解析:解析 在此题中,被调过程是一个函数过程,它有一个形式参数 j,在被调过程声明中,定义了一个参数 a,初值为 0,一个静态变量 b。语句 a=a+1 和 b=b+1 分别使 a 和 b 各增加 1,然后返回 H 的值,因为 b 是静态变量,所以每次调用同一个参数 k 时,b 会
45、保留前次的数值,使输出结果变化,否则每次输出的结果都将是一样的。根据分析,第一次调用时 a=1,b=1,H=3;第二次调用:a=1,b=2,H=4;第三次调用:a=1,b=3,H=5。所以最后的输出结果是 345。30.下列说法错误的是(分数:2.00)A.方法是对象的一部分B.在凋用方法时,对象名是不可缺少的 C.方法是一种特殊的过程和函数D.方法的调用格式和对象属性的使用格式相同解析:解析 方法是对象的一部分,所以选项 A)的表述是正确的;其调用格式为:对象名.方法名称,与属性的使用格式相同,所以选项 D)是正确的;方法在调用时,可以省略对象名,但这只限于当前窗体(或控件),如果不是当前窗
46、体或控件要加上对象名称,所以选项 B)是不正确的;方法是一种特殊的过程和函数,所以选项 C)是正确的。31.单击命令按钮时,下列程序的执行结果为Private Sub Command1_Click()Dim x As Integer,y As Integerx=12:Y=32Call PCS(x,y)Print x;yEnd SubPublic Sub PCS(ByVal n As Integer,ByVal m As Integer)n=n Mod 10m=m Mod 10End Sub(分数:2.00)A.1232 B.232C.23D.123解析:解析 此题是函数过程的调用。在调用过程时
47、,一般主调与被调过程之间有数据传递,即将主调过程的实参传递给被调用的过程,完成实参与形参的结合,然后执行被调过程,在 Visual Basic 中,实参与形参的结合有两种方式,即传址与传值。这两种方法的特点如下。传址的结合过程是,当调用一个过程时,它将实参的地址传给形参,因此在被调用的过程中,对形参的任何操作都变成了对相应实参的操作,因此实参的值会随形参的改变而改变。传值的结合过程是,当调用一个过程时,系统将实参的值复制给形参并断开了联系,被调用过程中的操作是在形参自己的存储单元中进行的,当过程调用结束时,这些形参所占用的存储单元也同时被释放,因此在过程中对形参的任何操作都不会影响实参。而题中
48、被调过程 PCS 中有两个形参,两者均为传值方式。主调过程分别把实参 x、y 传递给 PCS,所以当过程调用结束后,实参 x、y 的值都没有改变,最后输出的值应为 1232。32.下列有关子菜单的说法中,错误的是(分数:2.00)A.除了 Click 事件之外,菜单项不可以响应其他事件B.每个菜单项都是一个控件,与其他控件一样也有其属性和事件C.菜单项的索引号必须从 1 开始 D.菜单的索引号可以不连续解析:解析 在程序运行后,当用户选择某个菜单标题时会打开下拉菜单,菜单中的菜单项可以是命令、选项、分隔条或子菜单标题,每个菜单项都是一个控件,与其他控件一样电有自己的属性和事件,菜单项的各个属性都能设置和查看,如 Name(名称)和 Cption(标题)属性等,每个菜单项只能响应一个事件,即Click 事件;有关菜单项的索引号问题,表示菜单数组中的位置序号,如果不定义菜单数组,可以不理会,其实菜单的索引号可以不连续,并没有限制必须从 1 开始,所以只有选项 C)是错误的
copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1