1、国家二级 VB 机试(选择题)-试卷 40 及答案解析(总分:80.00,做题时间:90 分钟)一、选择题(总题数:40,分数:80.00)1.下列叙述中正确的是(分数:2.00)A.数据结构中的数据元素可以是另一种数据结构B.数据结构中的数据元素只能是另一种线性结构C.数据结构中的数据元素只能是另一种非线性结构D.以上说法均不正确2.设数据元素集合为A,B,C,D,E,F,下列关系为线性结构的是(分数:2.00)A.R= (D,F),(E,C),(B,C),(A,B),(C,F) B.R= (D,E),(E,A),(B,C),(A,B),(C,F) C.R= (A,B),(C,D),(B,A
2、),(E,F),(F,A) D.R= (D,E),(E,A),(B,C),(F,B),(C,F) 3.设栈的存储空间为 S(1:m),初始状态为 top=m+1。经过一系列入栈与退栈操作后,top=m。现又在栈中退出一个元素后,栈顶指针 top 值为(分数:2.00)A.m+1B.0C.m-1D.产生栈空错误4.设循环队列存储空间为 Q(1:50)。初始状态为 front=rear=50。经过一系列入队和退队操作后,front=14,rear=19,则该循环队列中的元素个数为(分数:2.00)A.46B.45C.6D.55.设二叉树中共有 15 个结点,其中的结点值互不相同。如果该二叉树的前序
3、序列与中序序列相同,则该二叉树的深度为(分数:2.00)A.15B.6C.4D.不存在这样的二叉树6.下列各组的排序方法中,最坏情况下比较次数相同的是(分数:2.00)A.冒泡排序与快速排序B.简单插入排序与希尔排序C.堆排序与希尔排序D.快速排序与希尔排序7.单元测试主要涉及的文档是(分数:2.00)A.编码和详细设计说明书B.确认测试计划C.需求规格说明书D.总体设计说明书8.下列关于数据库系统的叙述中正确的是(分数:2.00)A.数据库的数据项之间无联系,记录之间存在联系B.数据库中只存在数据项之间的联系C.数据库的数据项之间以及记录之间都存在联系D.数据库的数据项之间以及记录之间都不存
4、在联系9.设有三张表,客户(客户号,姓名,地址),产品(产品号,产品名,规格,进价),购买(客户号,产品号,价格),其中表客户和表产品的关键字(键或码)分别为客户号和产品号,则表购买的关键字为(分数:2.00)A.客户号,产品号B.客户号C.产品号D.客户号,产品号,价格10.有关系 R 如下: (分数:2.00)A.(b,e, 1,2)B.(c,c,11,4)C.(a,a,2,2)D.空11.Visual Basic 窗体设计器的主要功能是( )。(分数:2.00)A.画图B.编写源程序代码C.建立用户界面D.显示文字12.程序运行时,当用鼠标点击滚动条两端的箭头按钮时,不会产生的结果是(
5、)。(分数:2.00)A.改变 Value 属性的值B.激活 Scroll 事件C.激活 Change 事件D.滚动框移动13.已知文本框 Text1 中输入了一篇英文短文,并编写了如下程序段: Str_x = Text1.Text n = Len(Str_x) m = 0 t = 0 For i = 1 To n w = UCase(Mid(Str_x, i, 1) If w = “A“ And w 20B.5-10 Or x20C.x= 5 And x 20D.5 To 10: x2018.编写如下程序代码:Private Sub Command1_Click() s = “Visual
6、Basic“ x = Left(s, 1) For i = 2 To Len(s) z = Mid(s, i, 1) If z x Then x = z Next i Print xEnd Sub 程序运行后,单击命令按钮 Command1,输出结果为( )。(分数:2.00)A.aB.VC.sD.u19.设 a、b、c 为整型变量,其值分别为 4、5、6。以下程序段的输出结果是( )。a = b: b = c: c = aPrint a; b; c(分数:2.00)A.5 6 4B.4 5 6C.5 6 5D.6 5 420.Visual Basic 数据类型中,占用内存最小的是( )。(分
7、数:2.00)A.IntegerB.BooleanC.SingleD.Byte21.当复选框的 Value 属性值为 1 时,表示( )(分数:2.00)A.该复选框不可用B.该复选框不可见C.没有选中该复选框D.选中该复选框22.在窗体上画一个名称为 List1 的列表框和一个名称为 Text1 的文本框,然后编写如下两个事件过程:Private Sub Form_Load() List1.AddItem “100“ List1.AddItem “200“ List1.AddItem “300“ List1.AddItem “400“ Text1.Text = “End SubPrivate
8、 Sub List1_DblClick() a = List1.Text Print a + Text1.TextEnd Sub 程序运行后,在文本框中输入“500“,然后双击列表框中的“400“,则输出结果为( )。(分数:2.00)A.400500B.500400C.900D.023.在窗体上画一个文本框(名称为 Text1)和一个标签(名称为 Label1),程序运行后,在文本框中每输入一个字符,都会立即在标签中显示文本框中字符的个数。以下可以实现上述操作的事件过程是( )。(分数:2.00)A.Private Sub Text1_Change() Label1.Caption = St
9、r(Len(Text1.Text) End SubB.Private Sub Text1_Click() Label1.Caption = Str(Len(Text1.Text) End SubC.Private Sub Text1_Change() Label1.Caption = Text1.Text End SubD.Private Sub Label1_Change() Label1.Caption = Str(Len(Text1.Text) End Sub24.以下叙述中,错误的是( )(分数:2.00)A.在设计阶段不能调整通用对话框控件的大小B.当文本框失去焦点时,触发其 Los
10、tFocus 事件C.可以将计时器控件的 Enabled 属性设置为 False,使其不能自动触发 Timer 事件D.如果文本框的 TabStop 属性值为 False,则不能接收从键盘上输入的数据25.以下关于图片框控件的说法中,正确的是( )。(分数:2.00)A.清空图片框控件中图形的方法之一是将其 Picture 属性的值设置为 NullB.可以通过调用图片框的 Print 方法在图片框中输出文本C.为使图像能自动适应图片框的大小,应将图片框的 Stretch 属性设置为 FalseD.用 cls 方法可以清除图片框中装入的图片26.当复选框控件被选中(即复选框控件内显示“标记)时,
11、其 Value 属性的值为( )(分数:2.00)A.0B.1C.TrueD.False27.对于复选框来说,Value 属性可以设置为 0、1 或 2。其中 1 表示选中该复选框。故 B 选项正确(分数:2.00)A.Combo1.RemoveItem Combo1.ListCount-1B.Combo1.RemoveItem Combo1.IndexC.Combo1.RemoveItem 3D.Combo1.RemoveItem Combo1.ListIndex28.设有一名称为 txtName 的文本框,则下列能使其具有输入焦点的语句是( )(分数:2.00)A.Focus=TrueB.
12、txtName.SetFocus=TrueC.txtName.SetFocusD.txtName=SetFocus29.编写如下程序代码:Private Sub Command1_Click() Const n = 5 Dim arrx(n) As Integer For i = 1 To 5 arrx(i) = i * i Next i Call swap(arrx(), n) For i = 1 To n Print arrx(i); NextEnd SubPublic Sub swap(a() As Integer, k As Integer) For i = 1 To k / 2 t
13、= a(i) a(i) = a(k - i + 1) a(k - i + 1) = t NextEnd Sub 程序运行后,单击命令按钮 Command1,输出结果为( )。(分数:2.00)A.1 4 9 4 1B.4 1 9 25 16C.1 4 9 16 25D.25 16 9 4 130.如果在过程 A 中用语句:Call proc(a, b) 调用下面的过程 Private Sub proc(b As Integer, ByVal a As Integer) a = a + 1 b = b * 2End Sub 则调用结束后的结果是( )。(分数:2.00)A.过程 A 中变量 b
14、的值变为原有值的 2 倍B.过程 A 中变量 a 的值变为原有值的 2 倍C.过程 A 中变量 a 的值变为原有值的 2 倍,b 的值等于原有值加 1D.过程 A 中变量 b 的值变为原有值的 2 倍,a 的值等于原有值加 131.以下 Case 子句中错误的是( )。(分数:2.00)A.Case Is 10 And Is 10C.Case 0 To 10D.Case 3, 5, Is 1032.设在程序开始处有语句:Option Base 0,则下面定义的数组中正好有 12 个元素的是( )。(分数:2.00)A.Dim s%( 3 , 2 )B.Dim a%( 12 )C.Dim s%(
15、 3 , 4 )D.Dim a%( -6 To 6 )33.在窗体上画一个名称为 Command1 的命令按钮和一个名称为 Text1 的文本框,然后编写以下程序代码:Private Sub sub1(ByRef d(), ByRef m1 As Integer) Dim i As Integer m1 = d(LBound(d) For i = LBound(d) + 1 To UBound(d) If m1 B“表示选择 A、B 两个属性中不相同的元组,D=2 表示选择属性 D 中元素不小于 2 的元组,关系“表示选择两个条件同时成立的元组。满足条件的元组只有(b e 1 2)。故选 A
16、选项。11.Visual Basic 窗体设计器的主要功能是( )。(分数:2.00)A.画图B.编写源程序代码C.建立用户界面 D.显示文字解析:解析:Visual Basic 窗体设计器简称窗体(Form),是应用程序最终面向用户的窗口,它对应于应用程序的运行结果。各种图形、图像、数据等都是通过窗体或窗体中的控件显示出来的,在设计应用程序时,窗体就像是一块画布,在这块画布上可以画出组成应用程序的各个构件。故 C 选项正确。12.程序运行时,当用鼠标点击滚动条两端的箭头按钮时,不会产生的结果是( )。(分数:2.00)A.改变 Value 属性的值B.激活 Scroll 事件 C.激活 Ch
17、ange 事件D.滚动框移动解析:解析:对滚动条的操作一般就是移动,滚动条事件有 Scroll 事件和 Change 事件,故选项 A、C 和D 均正确;本题正确答案为 B13.已知文本框 Text1 中输入了一篇英文短文,并编写了如下程序段: Str_x = Text1.Text n = Len(Str_x) m = 0 t = 0 For i = 1 To n w = UCase(Mid(Str_x, i, 1) If w = “A“ And w 20 B.5-10 Or x20C.x= 5 And x 20D.5 To 10: x20解析:解析:在 Select Case 语句中,Cas
18、e 表达式列表可以有 3 中形式:1)表达式,表达式;2)表达式 To 表达式;3)Is 关系运算表达式;在一个 Select Case 语句中,3 种形式可以混用。故只有 A 选项正确,选项 B、C、D 均错误。18.编写如下程序代码:Private Sub Command1_Click() s = “Visual Basic“ x = Left(s, 1) For i = 2 To Len(s) z = Mid(s, i, 1) If z x Then x = z Next i Print xEnd Sub 程序运行后,单击命令按钮 Command1,输出结果为( )。(分数:2.00)A
19、.aB.VC.sD.u 解析:解析:Left(s, 1)表示截取字符串 s 中最左边 1 个字符,即 x=“V“;Len 英文全称 Length,中文意长度。Len(s)测量字符串长度,函数返回值为 12;For 循环中,循环变量 i 初始值为 2,终止值为 12,每执行一次循环通过表达式“Mid(s, i, 1)“将字符串 s 中的第 i 个元素取出来赋值给变量 z,再通过 if 语句判断 z 与 x 的大小,使变量 x 始终保存较大的元素,也就是说程序的功能为:通过 For 循环遍历整个字符串 z,找出其中最大的字母,最后输出。注意:字符的比较其实比较的是字符的 ASCII 码,所以字符串
20、s 中最大字符为“u“,故 D 选项正确。19.设 a、b、c 为整型变量,其值分别为 4、5、6。以下程序段的输出结果是( )。a = b: b = c: c = aPrint a; b; c(分数:2.00)A.5 6 4B.4 5 6C.5 6 5 D.6 5 4解析:解析:Print 方法可以输出多个变量的值,各变量用分隔符(逗号、分号或空格)隔开。初始时a=4,b=5,c=6;执行 a=b 后,a 的值为 5;执行 b=c 后,b 的值为 6;执行 c=a 后,c 的值为 5;使用Print 方法输出结果为 5;6;5;故 C 选项正确。20.Visual Basic 数据类型中,占
21、用内存最小的是( )。(分数:2.00)A.IntegerB.BooleanC.SingleD.Byte 解析:解析:在 Visual Basic 中,整数(Integer)占用 2 个字节;布尔(Boolean)占用 2 个字节;单精度浮点型(Single)占用 4 个字节;字节(Byte)占用 1 个字节;故 D 选项正确。21.当复选框的 Value 属性值为 1 时,表示( )(分数:2.00)A.该复选框不可用B.该复选框不可见C.没有选中该复选框D.选中该复选框 解析:解析:对于复选框来说,Value 属性可以设置为 0、1 或 2。其中:10:表示没有选择该复选框;1:表示选中该
22、复选框;2:表示该复选框被禁止(灰色)故 D 选项正确。22.在窗体上画一个名称为 List1 的列表框和一个名称为 Text1 的文本框,然后编写如下两个事件过程:Private Sub Form_Load() List1.AddItem “100“ List1.AddItem “200“ List1.AddItem “300“ List1.AddItem “400“ Text1.Text = “End SubPrivate Sub List1_DblClick() a = List1.Text Print a + Text1.TextEnd Sub 程序运行后,在文本框中输入“500“,然
23、后双击列表框中的“400“,则输出结果为( )。(分数:2.00)A.400500 B.500400C.900D.0解析:解析:当加载窗体时,首先执行 Form_Load();列表框的 Text 属性表示最后一次选中的表项的文本,双击列表框中的“400“,表示选中“400“选项,则在 List1_DblClick 事件中 a=“400“,在文本框中输入“500“,通过“Print a + Text1.Text“输出“400500“。语句中的“+“为字符串连接符,作用是将两个字符串连接为一个新串。故本题 A 选项正确。23.在窗体上画一个文本框(名称为 Text1)和一个标签(名称为 Label
24、1),程序运行后,在文本框中每输入一个字符,都会立即在标签中显示文本框中字符的个数。以下可以实现上述操作的事件过程是( )。(分数:2.00)A.Private Sub Text1_Change() Label1.Caption = Str(Len(Text1.Text) End Sub B.Private Sub Text1_Click() Label1.Caption = Str(Len(Text1.Text) End SubC.Private Sub Text1_Change() Label1.Caption = Text1.Text End SubD.Private Sub Label
25、1_Change() Label1.Caption = Str(Len(Text1.Text) End Sub解析:解析:要想实现题中所叙述的功能,必须使用 Text1 的 Change 事件,故首先可以排除 B、D;选项C,在标签中显示的是文本框中的内容而非字符个数。故选项 C 错误。在标签中显示文本框中字符的个数可以使用,Label1.Caption= Str(Len(Text1.Text)语句,其中:Len 函数可以获取文本框 Text1 中所输入字符的个数,然后通过 Str 转换函数,将数字转换成字符赋值给 Label1 的 Caption 属性,故本题正确答案为 A。24.以下叙述中
26、,错误的是( )(分数:2.00)A.在设计阶段不能调整通用对话框控件的大小B.当文本框失去焦点时,触发其 LostFocus 事件C.可以将计时器控件的 Enabled 属性设置为 False,使其不能自动触发 Timer 事件D.如果文本框的 TabStop 属性值为 False,则不能接收从键盘上输入的数据 解析:解析:文本框中 TabStop 属性用来设置用户是否可以使用 Tab 键来选定对象,当文本框的 Locked属性值为 False,则不能接收从键盘上输入的数据,故 D 选项错误;A、B、C 选项均正确。25.以下关于图片框控件的说法中,正确的是( )。(分数:2.00)A.清空
27、图片框控件中图形的方法之一是将其 Picture 属性的值设置为 NullB.可以通过调用图片框的 Print 方法在图片框中输出文本 C.为使图像能自动适应图片框的大小,应将图片框的 Stretch 属性设置为 FalseD.用 cls 方法可以清除图片框中装入的图片解析:解析:将图片框 Picture 属性的值设置为 Null 并不能清空图片框控件中的图形,故 A 选项错误;图片框是“容器“控件,可以作为父控件,并且可以通过 Print 方法接收文本,故 B 选项正确;Stretch 属性用于图像框,用来自动调整图像框中图形内容的大小,而非图片框,故 C 选项错误;Cls 方法可以清除窗体
28、或图片框中的信息,并将光标移动到对象的左上角(0,0)处,故 D 选项错误。本题正确答案为 B。26.当复选框控件被选中(即复选框控件内显示“标记)时,其 Value 属性的值为( )(分数:2.00)A.0B.1 C.TrueD.False解析:解析:对于复选框来说,Value 属性可以设置为 0、1 或 2。其中 1 表示选中该复选框。故 B 选项正确27.对于复选框来说,Value 属性可以设置为 0、1 或 2。其中 1 表示选中该复选框。故 B 选项正确(分数:2.00)A.Combo1.RemoveItem Combo1.ListCount-1 B.Combo1.RemoveIte
29、m Combo1.IndexC.Combo1.RemoveItem 3D.Combo1.RemoveItem Combo1.ListIndex解析:解析:ListCount 属性列出组合框中表项的数量。组合框中表项的排列从 0 开始,最后一项的序号为 ListCount-1,所以使用表达式“Combo1.RemoveItem Combo1.ListCount-1“可以从组合框中删除最后一项,故 A 选项正确。28.设有一名称为 txtName 的文本框,则下列能使其具有输入焦点的语句是( )(分数:2.00)A.Focus=TrueB.txtName.SetFocus=TrueC.txtNam
30、e.SetFocus D.txtName=SetFocus解析:解析:SetFocus 是文本框中较常使用的方法:格式为:对象.SetFocus,该方法可以把输入光标(焦点)移动到指定的文本框中。故 C 选项正确。29.编写如下程序代码:Private Sub Command1_Click() Const n = 5 Dim arrx(n) As Integer For i = 1 To 5 arrx(i) = i * i Next i Call swap(arrx(), n) For i = 1 To n Print arrx(i); NextEnd SubPublic Sub swap(a
31、() As Integer, k As Integer) For i = 1 To k / 2 t = a(i) a(i) = a(k - i + 1) a(k - i + 1) = t NextEnd Sub 程序运行后,单击命令按钮 Command1,输出结果为( )。(分数:2.00)A.1 4 9 4 1B.4 1 9 25 16C.1 4 9 16 25D.25 16 9 4 1 解析:解析:Visual Basic 允许把数组作为实参传送到过程中,当用数组作为过程的参数时,使用的是“传地址“方式。本题中首先在 Command1_Click 过程中定义一个数组,并通过 For 循环给
32、数组中的元素赋值,arrx(1)=1;arrx(2)=4;arrx(3)=9;arrx(4)=16;arrx(5)=25;在 swap 过程中,形参是数组,通过 For循环将数组首尾元素交换。当 i=1 时,t=a(1)=1,a(1)=a(5)=25,a(5)=t=1,a(1)与 a(5)交换成功;当i=2 时,t=a(2)=4,a(2)=a(4)=16;a(4)=t=4,a(2)与 a(4)交换成功。循环执行 2 次结束,由于是按地址传递,主调过程 Command1_Click 中数组元素的值即发生了交换,数组元素输出结果为:25 16 9 4 1。故D 选项正确。30.如果在过程 A 中用
33、语句:Call proc(a, b) 调用下面的过程 Private Sub proc(b As Integer, ByVal a As Integer) a = a + 1 b = b * 2End Sub 则调用结束后的结果是( )。(分数:2.00)A.过程 A 中变量 b 的值变为原有值的 2 倍B.过程 A 中变量 a 的值变为原有值的 2 倍 C.过程 A 中变量 a 的值变为原有值的 2 倍,b 的值等于原有值加 1D.过程 A 中变量 b 的值变为原有值的 2 倍,a 的值等于原有值加 1解析:解析:用 Call 语句调用 Sub 过程。如果形参前面有关键字 ByVal,则该参
34、数以传值方式传送。调用结束后,变量 a 的值变为原有值的 2 倍,变量 b 的值不变。故本题正确答案为 B。31.以下 Case 子句中错误的是( )。(分数:2.00)A.Case Is 10 And Is 10C.Case 0 To 10D.Case 3, 5, Is 10解析:解析:Case 表达式列表可以有以下几种形式:1)以逗号隔开的一组值。故 D 选项正确。2)以 To关键字表示的一个范围。故 C 选项正确。3)Is 关系运算表达式。当用关键字 Is 定义条件时,只能是简单的条件,不能用逻辑运算符将两个或多个简单条件组合在一起,故 A 选项错误,B 选项正确。本题正确答案为 A。3
35、2.设在程序开始处有语句:Option Base 0,则下面定义的数组中正好有 12 个元素的是( )。(分数:2.00)A.Dim s%( 3 , 2 ) B.Dim a%( 12 )C.Dim s%( 3 , 4 )D.Dim a%( -6 To 6 )解析:解析:Option Base 语句用来指定数组的下标的默认下界,Option Base 0 表示数组的默认下标下界为 0,A 选项中,数组有 4 行(03)、3 列(02),共有 43=12 个元素;B 选项中,数组共有(012)共计 13 个元素;C 选项中,数组有 4 行(03)、5 列(04),共有 45=20 个元素;D 选项
36、中,数组有(-66)共计 13 个元素;故 A 选项正确。33.在窗体上画一个名称为 Command1 的命令按钮和一个名称为 Text1 的文本框,然后编写以下程序代码:Private Sub sub1(ByRef d(), ByRef m1 As Integer) Dim i As Integer m1 = d(LBound(d) For i = LBound(d) + 1 To UBound(d) If m1 d(i) Then m1 = d(i) Next iEnd SubPrivate Sub Command1_Click() Dim n1 As Integer n1=-1 Dim
37、data() data = Array(10, 20, -20, 50, 15, -5) Call sub1(data(), n1) Text1.Text = n1End Sub 程序运行过程中,当单击命令按钮 Command1 时,则在文本框 Text1 中显示的结果为( )。(分数:2.00)A.-5B.-1C.0D.50 解析:解析:程序的主要功能为:找出数组中的最大值并输出。首先,在程序中定义一个数组变量data,然后通过 Array 函数给数组整体赋值。LBound 函数返回数组某一维的下界,UBound 函数返回数组某一维的上界。在子程序 sub1 中,通过 ByRef 方式将数组
38、的首地址及变量 n 的地址分别传给形参数组 d和变量 m1,此时形参数组 d 和变量 m1 与实参数组 data 和变量 n1 共享相同的地址空间。在Command_Click 过程中语句“Call sub1(data( ), n1)“调用子过程 sub1,并传递参数。在子过程 sub1 中,LBound(d)=0(数组下标的下界值),UBound(d) = 5;m1=d(LBound(d)=d(0)=10。程序进入 For 循环,i从 1 开始执行到 5 结束,当 i=1 时,d(1)=20,10-20 为假;当 i=3 时,d(3)=50,20-5 为假。整个程序运行结束,最终 m1 的值
39、为 50,也就是说 n1 的值为 50,程序返回后将 n1 的值显示在文本框 Text1 中,故选项 D 正确。34.有以下程序代码:Private Sub Command1_Click () Print fun(10), fun(5)End SubPrivate Function fun(n As Integer) As Integer Static t For k = 1 To n t = t + k Next k fun = tEnd Function 执行 Command1_Click 过程产生的输出是( )。(分数:2.00)A.55 15B.55 70 C.15 55D.15 70
40、解析:解析:Command1_Click 过程中两次调用 fun 函数,第一次调用时,将 10 传递给形参 n,在 fun 函数过程中定义了一个静态变量 i,i 的初始值为 0,并且变量 i 的结果可以保留。fun 函数中 For 循环的功能是对 1 到 n 之间的值进行累加,循环执行 10 次,t 的值为 1+2+3+10=55,将累加值通过变量 t 返回到主调过程 Command1_Click 中进行输出,结果为 55;主调过程 Command1_Click 第二次调用函数 fun,将5 传递给形参 n,此时静态变量 i 保留了上次程序执行的结果 55,再循环执行 5 次,t 的值为55+
41、1+2+3+4+5=70,将累加结果通过变量 t 返回到主调过程 Command1_Click 中进行输出,结果为 70。故选项 B 正确。35.在窗体上画 1 个名称为 CD1 的通用对话框,1 个名称为 Command1 的命令按钮,编写如下 Click 事件过程:Click 事件过程:Private Sub Command1_Click() CD1.FileName = “ CD1.Filter = “所有文件|*.*|所有 jpg 文件|*.jpg|所有 bmp 文件|*.bmp“ CD1.FilterIndex = 2 CD1.Action = 1End Sub 关于以上代码,正确的
42、叙述是( )。(分数:2.00)A.执行以上事件过程,可显示“打开“文件对话框 B.在出现的对话框中,显示的是所有扩展名为.bmp 的文件C.语句 CD1.Action = 1 可以等价地改成语句 CD1.ShowSaveD.在出现的对话框中,显示的是所有扩展名为.bmp 的文件解析:解析:过程中的“CD1.Action=1“用来建立 Open 对话框,它与语句“CD1.ShowOpen“等价,故 A 选项正确,C 选项错误;Filter 属性用来指定在对话框中显示的文件类型,用该属性可以设置多个文件类型,供用户在对话框的“文件类型“的下拉列表中选择。FilterIndex 属性用来指定默认的
43、过滤器,其默认值为一整数。过程中的“CD1.FilterIndex = 2“语句用来指定将第二个过滤器作为默认显示的过滤器,所以在出现的对话框中,显示的是所有扩展名为.jpg 的文件,故 B 选项错误;执行以上代码,只能打开选中的文件内容,并不能读取内容,故 D 选项错误。本题正确答案为 A。36.设有一名称为 mnuBold 的下拉菜单项,程序运行时,希望达到如下效果:当第一次单击该菜单项时,其标题左侧显示“,当第二次单击该菜单项时,其标题左侧的“消失,依此交替进行, 。则应在 mnuBold_Click 事件过程中书写的语句是( )。(分数:2.00)A.mnuBold.Checked =
44、 FalseB.mnuBold.Checked = TrueC.mnuBold.Checked = Not mnuBold.Checked D.mnuBold.Checked = IIf(mnuBold.Checked, True, False)解析:解析:动态设置菜单项标记可以使用 Checked 属性,该属性有 True 和 False 两种取值,当Checked 属性为 True 时,表示菜单项前面有“标记;Checked 属性为 False 时,菜单项前面没有“标记;只有 C 选项能够在显示和消失两种状态之间来回切换,故 C 选项正确。37.下列与鼠标拖放操作无关的是( )。(分数:2
45、.00)A.Drag 方法B.KeyPress 事件 C.DragOver 事件D.DragDrop 事件解析:解析:KeyPress 事件为键盘事件,故 B 选项正确;A、C、D 均与鼠标拖放操作有关,故均正确。38.在窗体上画一个名称为 Text1 的文本框,然后编写以下事件过程:Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer) If _ Then Text1.SelStart = 0 Text1.SelLength = Len(Text1.Text) End IfEnd Sub 要求程序运行时,若输入焦点在 T
46、ext1 上,按下组合键 Ctrl+A 可以选取 Text1 内所有的文本,则在横线处应填入的表达式是( )。(分数:2.00)A.KeyCode = 65 And Shift = 2 B.KeyCode = “A“ And Shift = “Ctrl“C.Text1.KeyCode = 65 And Text1.Shift = 2D.Text1.KeyCode = “A“ And Text1.Shift = “Ctrl“解析:解析:KeyDown 事件有两个参数,即 KeyCode 和 Shift。其中,KeyCode 是按键实际的 ASCII 码,“A“的 KeyCode 是 65;Shi
47、ft 是转换键,它指的是 3 个转换键的状态,包括 Shift、Ctrl 和 Alt,这 3 个键分别以二进制表示,每个键有 3 位,即 Shift 键为 001,Ctrl 键为 010,Alt 键为 100。当按下 Ctrl 键时,Shift 参数的值为 010(十进制数 2)。故 A 选项正确。39.下列关于随机文件的描述中,错误的是( )。(分数:2.00)A.每条记录的长度必须相同B.每条记录都有一个记录号C.数据存取灵活方便,容易修改D.只能随机存取 解析:解析:随机文件既可以随机存取也可以顺序存取,故 D 选项错误;A、B、C 叙述均正确。40.以下叙述中错误的是( )。(分数:2.00)A.保存程序时,应分别保存窗体文件和工程文件B.打开一个工程文件时,系统自动装入与该工程有关的窗体文件C.一个工程中可以包含一个或多个窗体,但不能包含其他模块 D.标准模块文件的扩展名是 .bas ,工程文件的扩展名是 .vbp解析:解析:一个工程中可以包含一个或多个窗体,也能包含多个标准模块,故 C 选项错误;其它选项叙述均正确。本题答案为 C。
copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1