1、二级 VISUAL+BASIC 笔试 335 及答案解析(总分:92.00,做题时间:90 分钟)一、B选择题/B(总题数:31,分数:62.00)1.在数据库管理系统提供的数据语言中,负责数据的查询及增、删、改等操作的是(分数:2.00)A.数据定义语言B.数据转换语言C.数据操纵语言D.数据控制语言2.在窗体上画一个名称为 Listl 的列表框,为了对列表框中的每个项目都能进行处理,应使用的循环语句为(分数:2.00)A.Fori=OTOListListCount?1 NextB.Fori=0 To List1.Count?1 NextC.Fori=1 To List1.ListCount
2、 NextD.For i=1 To List1.Count Next3.在窗体上画一个命令按钮,命名为 CommandI。程序运行后,如果单击命令按钮,则显示一个输入对话框,在该对话框中输入一个整数,并用这个整数作为实参调用函数过程 F1,在 F1 中判断所输入的整数是否是奇数,如果是奇数,过程 F1 返回 1,否则返回 0。 能够正确实现上述功能的代码是(分数:2.00)A.Privme Sub Command1_Click() x=InputBox(“请输入整数”) a=F1(Val() Print a End Sub Function F1(ByRef b As Intege If b
3、Mod 2=0 Then Return 0 Else Return 1 End If End FunctionB.Private Sub Command1_Click() x=InputBox(“请输入整数”) a=F1(Val() Print a End Sub Function F1(ByRef b As Intege If b Mod 2=0 Then F1=0 Else F1=1 End If End FunctionC.Private Sub Command1_Click() x=InputBox(“请输入整数”) F1(Val() Print a End Sub Function
4、F1(ByRef b As Intege If b Mod 2=0 Then F1=1 Else F1=0 End If End FunctionD.Private Sub Command1_Click() x=InputBox(“请输入整数”) F1 (Val() Print a End Sub Function F1(ByRef b As Intege If b Mod 2=0 Then Return 0 Else Return 1 End If End Function4.以下关于变量作用域的叙述中,正确的是(分数:2.00)A.窗体中凡被声明为 Private 的变量只能在某个指定的过
5、程中使用B.全局变量必须在标准模块中声明C.模块级变量只能用 Private 关键字声明D.Static 类型变量的作用域是它所在的窗体或模块文件5.在窗体中添加名称为 Command1 和名称为 Command2 的命令按钮以及文本框 Text1,然后编写如下代码: Private Sub Command1 Click() Text1.Text=“AB“ End Sub Private Sub Command2 Click() Text1.Text=“CD“ End Sub 首先单击 Command1 按钮,然后再单击 Command2 按钮,在文本框中显示(分数:2.00)A.ABB.CD
6、C.ABCDD.CDAB6.设在工程中有一个标准模块,其中定义了如下记录类型: Type Books Name As String *10 TelNum As String *20 End Type 在窗体上画一个名为 Command1 的命令按钮,要求当执行事件过程 Command1_Click时,在顺序文件 Person.txt 中写入一条记录。下列能够完成该操作的事件过程是(分数:2.00)A.Private Sub Command1_Click() Dim B As Books Open “c:/Persotxt“ For Output As #1 Name=InputBox(“输入姓
7、名”) TelNum=InputBox(“输入电话号码”) Write #1,Name,TelNum Close #1 End SubB.Private Sub Command1_Click() Dim B As Books Open “c:/Persotxt“ For Input As #1 Name=InputBox(“输入姓名”) TelNum=InputBox(“输入电话号码”) Print #1,Name,TelNum Close #1 End SubC.Private Sub Command1_Click() Dim B As Books ppen “c:/Persotxt“ Fo
8、r Output AS #1 Name=InputBox(“输入姓名”) TelNum=InputBox(“输入电话号码”) Write #1,B Close#1 End SubD.Privte Sub Command1_Click() Open “c:/Persotxt“ For Input As #1 Name=InputBox(“输入姓名”) TelNum=InputBox(“输入电话号码”) Print#1,Name,TelNum Close #1 End Sub7.执行如下两条语句后,窗体上显示的是 a=9.8596 Print Format(a,“$00,00.00“)(分数:2.
9、00)A.0,009.86B.$9.86C.9.86D.$0,009.868.在窗体上画一个命令按钮,其名称为 Command1,然后编写如下事件过程: Private Sub Command1_Click() Dim al(4,4),a2(4,4) For i=1 To 4 For j=1 To 4 a1(i,j)=i+j a2(i,j)=al(i,j)+i+j Next j Next i Print al(3,3);a2(3,3) End Sub 程序运行后,单击命令按钮,在窗体上输出的是(分数:2.00)A.6 6B.10 5C.7 21D.6 129.执行下面的程序段,x 的值为 Pr
10、ivate Sub Commandl_Click() For i=1 To 5 a=a+i Next i x=Val(i) MsgBox x End Sub(分数:2.00)A.5B.6C.7D.810.设 a5,b10,则执行 c=Int(b-a)*Rnd+a)+1 后,c 值的范围为(分数:2.00)A.510B.69C.610D.5911.执行语句 Open “Tel.dat“ For Random As #1 Len=50 后,对文件 Tel.dat 中的数据能够执行的操作是(分数:2.00)A.只能写,不能读B.只能读,不能写C.既可以读,也可以写D.不能读,不能写12.以下叙述中错
11、误的是(分数:2.00)A.一个工程可以包括多种类型的文件B.Visual Basic 应用程序既能以编译方式执行,也能以解释方式执行C.程序运行后,在内存中只能驻留一个窗体D.对于事件驱动型应用程序,每次运行时的执行顺序可以不一样13.下列程序段的执行结果为 Dim M(10) For k=1 To 10 M(k)=11-k Next k x=6 Print M (2+M(x)(分数:2.00)A.2B.3C.4D.514.在窗体(名称为 Form1)上绘制一个名称为 Text1 的文本框和一个名称为 Commandl 的命令按钮,然后编写一个事件过程。程序运行后,如果在文本框中输入一个字符
12、,则把命令按钮的标题设置为“计算机等级考试”。以下能实现上述操作的事件过程是(分数:2.00)A.Private Sub Tex1_Change() Command1.Caption=“计算机等级考试” EndSubB.Private Sub Command1_Click() Caption=“计算机等级考试”C.Private Sub Command1_Click() TexCaption=“计算机等级考试” End SubD.Private Sub Command1_Click() TextText=-“计算机等级考试” End Sub15.以下叙述中错误的是(分数:2.00)A.在 Ke
13、yUp 和 KeyDown 事件过程中,从键盘上输入 A 或 a 被视作相同的字母(即具有相同的 KeyCodB.在 KeyUp 和 KeyDown 事件过程中,将键盘上的“1”和右侧小键盘上的“1”视作不同的数字(具有不同的 KeyCodC.KeyPress 事件中不能识别键盘上某个键的按下与释放D.KeyPress 事件中可以识别键盘上某个键的按下与释放16.在软件开发中,下面任务不属于设计阶段的是(分数:2.00)A.数据结构设计B.给出系统模块结构C.定义模块算法D.定义需求并建立系统模型17.在窗体上绘制一个名称为 List1 的列表框,一个名称为 Labe11 的标签,列表框中显示
14、若干个项目。当单击列表框中的某个项目时,在标签中显示被选中项目的名称。下列能正确实现上述操作的程序是(分数:2.00)A.PriVate Sub List1_Click() LabelCaptiOn=LisListIndex End SubB.PriVate Sub List1_Click() LabelName=listListIndex End SubC.Private Sub List1_Click() LabelName=ListText End SubD.Private Sub List1_Click() LabelCaption=List1.Text End Sub18.如果一个工
15、程含有多个窗体及标准模块,则以下叙述中错误的是(分数:2.00)A.如果工程中含有 SubMain 过程,则程序一定首先执行该过程B.不能把标准模块设置为启动模块C.用 Hide 方法只是隐藏一个窗体,不能从内存中清除该窗体D.任何时刻最多只有一个窗体是活动窗体19.在窗体上画一个名称为 Command1 的命令按钮,然后编写如下事件过程: Private Sub Command1_Click() c=1234 c1 = Trim(Str(c) For i = 1 To 4 Print _ Next End Sub 程序运行后,单击命令按钮,要求在窗体上显示如下内容 1 12 123 1234
16、 则在下划线处应填入的内容为(分数:2.00)A.Right(c1,B.Left(c1,C.Mid(c1,i,1)D.Mid(c1,i,20.下列关于栈的描述中错误的是(分数:2.00)A.栈是先进后出的线性表B.栈只能顺序存储C.栈具有记忆作用D.对栈的插入与删除操作中,不需要改变栈底指针21.以下叙述中错误的是(分数:2.00)A.一个工程中只能有一个 Sub Main 过程B.窗体的 Show 方法的作用是将指定的窗体装入内存并显示该窗体C.窗体的 Hide 方法和 UnLoad 方法的作用完全相同D.若工程文件中有多个窗体,可以根据需要指定一个窗体为启动窗体22.设窗体上有一个名为 T
17、ext1 的文本框,并编写如下程序: Private Sub Form_Load() Show Text1.Text=“ “ Text1.SetFocus End Sub Private Sub Form_MouseUp(Button As Integer, Shift As Integer,X As Single,Y As Single) Print“程序设计” End Sub Private Sub Text1_KeyDown(KeyCode As Integer,Shift As Integer) Print “Visual Basic“; End Sub 程序运行后,如果在文本框中输入
18、字母“a”,然后单击窗体,则在窗本上显示的内容是(分数:2.00)A.Visual BasicB.程序设计C.Visual Basic 程序设计D.a 程序设计23.在一棵二叉树上第 5 层的结点数最多是(分数:2.00)A.8B.16C.32D.1524.下列对于软件测试的描述中正确的是(分数:2.00)A.软件测试的目的是证明程序是否正确B.软件测试的目的是使程序运行结果正确C.软件测试的目的是尽可能多地发现程序中的错误D.软件测试的目的是使程序符合结构化原则25.在窗体上绘制一个名称为 Commandl 的命令按钮,然后编写如下事件过程: Private Sub Commandl Cli
19、ck() c=“ABCD“ For n=1 To 4 Print _ Next End Sub 程序运行后,单击命令按钮,要求在窗体上显示如下内容: D CD BCD ABCD 则在横线处应填入的内容为(分数:2.00)A.Left(c,B.Right(c,C.Mid(c,n,1)D.Mid(c,n,26.下面叙述正确的是(分数:2.00)A.算法的执行效率与数据的存储结构无关B.算法的空间复杂度是指算法程序中指令(或语句)的条数C.算法的有穷性是指算法必须能在执行有限个步骤之后终止D.以上三种描述都不对27.表示滚动条控件取值范围最大值的属性是(分数:2.00)A.MaxB.LaxgeCha
20、ngeC.ValueD.Max-Min28.假定建立了一个名为 Command1 的命令按钮数组,则以下说法中错误的是(分数:2.00)A.数组中每个命令按钮的名称(Name 属性)均为 Command1B.数组中每个命令按钮的标题(Caption 属性)都一样C.数组中所有命令按钮可以使用同一个事件过程D.用名称 Command1(下标)可以访问数组中的每个命令按钮29.下列对于线性链表的描述中正确的是(分数:2.00)A.存储空间不一定是连续,且各元素的存储顺序是任意的B.存储空间不一定是连续,且前件与元素一定存储在后件元素的前面C.存储空间必须连续,且前件元素一定存储在后件元素的前面D.
21、存储空间必须连续,且各元素的存储顺序是任意的30.在窗体上绘制一个命令按钮,其名称为 Command1,然后编写如下事件过程: Private Sub Command1 Click() Dim i As Integer, x As Integer For i=1 To 6 If i=1 Then x=i If i= 4 Then x=x+1 Else x=x+2 End If Next i Print x End Sub 程序运行后,单击命令按钮,其输出结果为(分数:2.00)A.9B.6C.12D.1531.在窗体上画一个名称为 Command1 的命令按钮和一个名称为 Text1 的文本框
22、,然后编写 如下事件过程:Private Sub Command1_Click() n = Val(Text1.Text) For i = 2 To n For j = 2 To Sqr(i) If i Mod j=0 Then Exit For Next j If jSqr(i)Then Print i Next i End Sub 该事件过程的功能是(分数:2.00)A.输出 n 以内的奇数B.输出 n 以内的偶数C.输出 n 以内的素数D.输出 n 以内能被 j 整除的数二、B填空题/B(总题数:10,分数:30.00)32.数据管理技术发展过程经过人工管理、文件系统和数据库系统三个阶段
23、,其中数据独立性最高的阶段是 1。(分数:3.00)填空项 1:_33.以下程序段的输出结果是_。 num=0 While num=2 num=num+1 Wend Print num(分数:3.00)填空项 1:_34.按数据流的类型,结构化设计方法有两种设计策略,它们是变换分析设计和 1。(分数:3.00)填空项 1:_35.为了使计时器控件 Timer1 每隔 0.5 秒触发一次 Timer 事件,应将 Timer1 控件的 1 属性设置为 2。(分数:3.00)填空项 1:_36.本程序的功能是利用随机函数模拟投币,方法是:每次随机产生一个 0 或 1 的整数,相当于一次投币,1 代表
24、正面,0 代表反面。在窗体上有三个文本框,名称分别是 Text1、 Text2、Text3,分别用于显示用户输入投币总次数、出现正面的次数和出现反面的次数,如图所示。程序运行后,在文本框 Textl 中输入总次数,然后单击“开始”按钮,按照输入的次数模拟投币,分别统计出现正面、反面的次数,并显示结果。以下是实现上述功能的程序,请填空。 (分数:3.00)填空项 1:_37.阅读程序: Option Base 1 Private Sub Form Click() Dim a(3) As Integer Print“输入的数据是:”; For i = 1 To 3 a(i) = InputBox(
25、“输入数据”) Print a(i); Next Print If a(1)a(2) Then t = a(1) a(1) = a(2) a(2)= _ End If If a(2)a(3) Then m = a(2) ElseIf a(1)a(3) Then m= _ Else m= _ End If Print “中间数是:”;m End Sub 程序运行后,单击窗体,在输入对话框中分别输入三个整数,程序将输出三个数中的中间数,如图所示。请填空。 (分数:3.00)填空项 1:_38.在窗体上画一个名称为“Command1”、标题为“计算”的命令按钮,再画 7 个标签,其中 5 个标签组成
26、名称为 Label1 的控件数组;名称为 Label2 的标签用于显示计算结果,其 Caption 属性的初始值为空;标签 Label3 的标题为“计算结果”。运行程序时会自动生成 5 个随机整数,分别显示在标签控件数组的各个标签中,如图所示。单击“计算”按钮,则将标签数组各元素的值累加,然后将计算结果显示在Label2 中。请填空。 (分数:3.00)填空项 1:_39.为了改变计时器控件的时间间隔,应该修改该控件的 1 属性。(分数:3.00)填空项 1:_40.设在工程中有一个标准模块,其中定义了如下记录类型: Type Books Name As String (10 TelNum A
27、s String *20 End Type 在窗体上添加一个名为 Command1 的命名按钮,要求当执行事件过程 Command1 Click 时,在顺序文件 Person.txt 中写入一条记录。请在横线中填入适当的内容,将程序补充完整。 Private Sub Command1_Click() Dim B As _ Open“c:/Person.txt“ For Output As #1 B.Name=InputBox(“输入姓名”) B.TelNum=InputBox(“输入学号”) Write#1, B.Name, B.TelNum Close #1 End Sub(分数:3.00)
28、填空项 1:_41.阅读程序: Sub p(b () As Integer) For i=1 To 4 b(i) =2(i Next i End Sub Private Sub Command1_Click() Dim a (1 To 4) As Integer a(1)=5 a(2)=6 a(3)=7 a(4)=8 call p (a) For i=1 To 4 Print a(i) Next i End Sub 运行上面的程序,单击命令按钮,输出结果为 _。(分数:3.00)填空项 1:_二级 VISUAL+BASIC 笔试 335 答案解析(总分:92.00,做题时间:90 分钟)一、B
29、选择题/B(总题数:31,分数:62.00)1.在数据库管理系统提供的数据语言中,负责数据的查询及增、删、改等操作的是(分数:2.00)A.数据定义语言B.数据转换语言C.数据操纵语言 D.数据控制语言解析:解析 在数据库管理系统提供的数据语言中,数据操纵语言负责数据的查询及增、删、改等操作。故答案为 C。2.在窗体上画一个名称为 Listl 的列表框,为了对列表框中的每个项目都能进行处理,应使用的循环语句为(分数:2.00)A.Fori=OTOListListCount?1 Next B.Fori=0 To List1.Count?1 NextC.Fori=1 To List1.ListCo
30、unt NextD.For i=1 To List1.Count Next解析:解析 本题考查列表框的属性。列表框的属性是常考项目,考生要特别关注。列表框的 List 属性用来列出表项的内容,可以通过下标访问数组中的值(下标从 0 开始)。ListCount 属性列出列表框中表项的数量,它与 List 属性的区别是考试热点。本题中的 Count 并不是列表框的属性。故答案 B、D 是错误的。由于列表框中表项的排列从。开始,故答案 c 也是错误的。正确答案为 A。3.在窗体上画一个命令按钮,命名为 CommandI。程序运行后,如果单击命令按钮,则显示一个输入对话框,在该对话框中输入一个整数,并
31、用这个整数作为实参调用函数过程 F1,在 F1 中判断所输入的整数是否是奇数,如果是奇数,过程 F1 返回 1,否则返回 0。 能够正确实现上述功能的代码是(分数:2.00)A.Privme Sub Command1_Click() x=InputBox(“请输入整数”) a=F1(Val() Print a End Sub Function F1(ByRef b As Intege If b Mod 2=0 Then Return 0 Else Return 1 End If End FunctionB.Private Sub Command1_Click() x=InputBox(“请输入
32、整数”) a=F1(Val() Print a End Sub Function F1(ByRef b As Intege If b Mod 2=0 Then F1=0 Else F1=1 End If End Function C.Private Sub Command1_Click() x=InputBox(“请输入整数”) F1(Val() Print a End Sub Function F1(ByRef b As Intege If b Mod 2=0 Then F1=1 Else F1=0 End If End FunctionD.Private Sub Command1_Clic
33、k() x=InputBox(“请输入整数”) F1 (Val() Print a End Sub Function F1(ByRef b As Intege If b Mod 2=0 Then Return 0 Else Return 1 End If End Function解析:解析 本题综合考查了 InputBox 函数、块结构条件语句、Function 函数过程等多个知识点。B 项是正确选项,“Mod”表示取模,当 b 可以被 2 整除时,F1 返回 0,表示 b 为偶数时,F1 返回 0。这与题目要表达的意思一致。A、D 项使用的 Return 关键字是错误的,它不能把相应的数值赋
34、给 F1。C 项的功能与题目要实现的功能恰好相反,表示输入的数值为偶数时,F1 返回 1,故不正确。4.以下关于变量作用域的叙述中,正确的是(分数:2.00)A.窗体中凡被声明为 Private 的变量只能在某个指定的过程中使用B.全局变量必须在标准模块中声明 C.模块级变量只能用 Private 关键字声明D.Static 类型变量的作用域是它所在的窗体或模块文件解析:解析 本题考查局部变量与全局变量在窗体中凡是被声明为 Private 的变量,可以在整个窗体中被调用,选项 A 说法不正确B 项表述正确,全局变量只能在标准模块中声明。模块级变量可以用Private 关键字声明,也可以在通用过
35、程中用 Dim 关键字声明,故选项 C 错误。Static 类型的变量如果在事件过程中声明,那么只能在该过程中调用,故选项 D 也是错误的。5.在窗体中添加名称为 Command1 和名称为 Command2 的命令按钮以及文本框 Text1,然后编写如下代码: Private Sub Command1 Click() Text1.Text=“AB“ End Sub Private Sub Command2 Click() Text1.Text=“CD“ End Sub 首先单击 Command1 按钮,然后再单击 Command2 按钮,在文本框中显示(分数:2.00)A.ABB.CD C.
36、ABCDD.CDAB解析:解析 本题意在考查考生对文本框 Text 的理解。当单击 Command1 时,Text1 的 Text 变为 AB;当单击 Command2 时,Text1 的属性变为 CD,故选择 B,不能选 C,更不能选 D。6.设在工程中有一个标准模块,其中定义了如下记录类型: Type Books Name As String *10 TelNum As String *20 End Type 在窗体上画一个名为 Command1 的命令按钮,要求当执行事件过程 Command1_Click时,在顺序文件 Person.txt 中写入一条记录。下列能够完成该操作的事件过程是
37、(分数:2.00)A.Private Sub Command1_Click() Dim B As Books Open “c:/Persotxt“ For Output As #1 Name=InputBox(“输入姓名”) TelNum=InputBox(“输入电话号码”) Write #1,Name,TelNum Close #1 End Sub B.Private Sub Command1_Click() Dim B As Books Open “c:/Persotxt“ For Input As #1 Name=InputBox(“输入姓名”) TelNum=InputBox(“输入电
38、话号码”) Print #1,Name,TelNum Close #1 End SubC.Private Sub Command1_Click() Dim B As Books ppen “c:/Persotxt“ For Output AS #1 Name=InputBox(“输入姓名”) TelNum=InputBox(“输入电话号码”) Write #1,B Close#1 End SubD.Privte Sub Command1_Click() Open “c:/Persotxt“ For Input As #1 Name=InputBox(“输入姓名”) TelNum=InputBo
39、x(“输入电话号码”) Print#1,Name,TelNum Close #1 End Sub解析:解析 本题考查文件的打开与顺序文件中写入记录的操作。由于要写入,故顺序文件的打开方式应为 Output,所以 B、D 项错误。同时用“Write#”语句写入时,要指明写入的变量名,对于记录类型的变量,要分别写出元素,所以 C 项也是错误的,正确答案为 A。7.执行如下两条语句后,窗体上显示的是 a=9.8596 Print Format(a,“$00,00.00“)(分数:2.00)A.0,009.86B.$9.86C.9.86D.$0,009.86 解析:解析 本题考查格式输出 Format
40、 函数解题的关键是掌握格式说明字符的理解。0 表示一个数字位,0 的个数决定了显示区段的长度,多余的位以 0 补齐;小数点与 0 结合使用,可以放在显示区段的任何位置,根据格式字符串的位置,小数部分多余的数字按四舍五入处理;逗号起到分位的作用,即从小数点左边一位开始,每 3 位用一个逗号分开,其中逗号可以放在小数点左边的任何位置,但不要放在头部,也不要紧靠小数点。据此,本题正确答案为 D。8.在窗体上画一个命令按钮,其名称为 Command1,然后编写如下事件过程: Private Sub Command1_Click() Dim al(4,4),a2(4,4) For i=1 To 4 Fo
41、r j=1 To 4 a1(i,j)=i+j a2(i,j)=al(i,j)+i+j Next j Next i Print al(3,3);a2(3,3) End Sub 程序运行后,单击命令按钮,在窗体上输出的是(分数:2.00)A.6 6B.10 5C.7 21D.6 12 解析:解析 本题是对二重循环和二维数组的考查。题目程序通过一个二重循环给二维数组赋值,然后将 a1(3,3)和 a2(3,3)输出。注意分析,在对数组赋值时,a1(i,j)=i+j。 a2(i,j)=a1(i,j)+i+j=2*a1(i,j)。观察选项只有选项 D 满足这个条件,不需计算,可以直接判断选项 D 正确。
42、9.执行下面的程序段,x 的值为 Private Sub Commandl_Click() For i=1 To 5 a=a+i Next i x=Val(i) MsgBox x End Sub(分数:2.00)A.5B.6 C.7D.8解析:解析 本题考查 For 循环控制语句,做好此题的关键是掌握 For 循环语句的执行过程。For 循环首先把初值赋给循环变量,接着检查循环变量的值是否超过终值,如果超过就停止执行循环体,跳出循环,执行 Next 后面的语句;否则执行一次循环体,然后把循环变量+步长的值赋给循环变量,重复上述过程。据此如果 For 循环的终值等于初值,For 循环也会执行一次
43、循环。本题中当 For 执行第五次循环后,i 的值为 5,此时系统还会返回,令 i=5+1 并判断此时的 i 值是否大于 5,大于 5,故退出循环体。所以此时的 i 值为 6,故选 B。本题一般考生很容易选择 A,值得关注。10.设 a5,b10,则执行 c=Int(b-a)*Rnd+a)+1 后,c 值的范围为(分数:2.00)A.510B.69C.610 D.59解析:解析 本题考查对常用函数的理解。Int 函数是将浮点型或货币型数据转换成不大于给定数的最大整数;Rnd 函数是产生随机数,范围是(0,1)。题目中(b-a)*Rnd+a 表达式,当 Rnd 取 0 时最小;取 1时最大,范围
44、是(5,10),因为 Rnd 不会取到 0 和 1,所以 Int(b-a)*Rnd+a)值的范围是5,9,所以 c 的范围为 610。11.执行语句 Open “Tel.dat“ For Random As #1 Len=50 后,对文件 Tel.dat 中的数据能够执行的操作是(分数:2.00)A.只能写,不能读B.只能读,不能写C.既可以读,也可以写 D.不能读,不能写解析:解析 以 Open 语句打开一个随机文件可以进行读操作,也可以进行写操作,故答案为 C。写操作使用 Put#语句,读操作使用 Get #语句。12.以下叙述中错误的是(分数:2.00)A.一个工程可以包括多种类型的文件
45、B.Visual Basic 应用程序既能以编译方式执行,也能以解释方式执行C.程序运行后,在内存中只能驻留一个窗体 D.对于事件驱动型应用程序,每次运行时的执行顺序可以不一样解析:解析 本题考查 Visual Basic 应用程序的运行与结构。Visual Basic 中一个工程可以含有多重窗体以及多种类型的文件。答案 A 是正确的。Visual Basic 应用程序的执行方式有两种:编译方式与解释方式。选项 B 也是正确的。C 项理解有误,程序运行后,在内存中可以驻留多个窗体,只要没有被关闭,窗体就保留在内存中。D 项理解正确,这一点也是 Visual Basic 语言的特殊之处。13.下
46、列程序段的执行结果为 Dim M(10) For k=1 To 10 M(k)=11-k Next k x=6 Print M (2+M(x)(分数:2.00)A.2B.3C.4 D.5解析:解析 通过 For k 循环,数组 M(10)被逐一赋值,结果是要显示(通过 Print 语句)M(2+M(x)的值。根据 M(k)=11-k,不难得出当 x=6 时 M(2+M(x)=M(2+5)=M(7)=11-7=4,故答案为 C。14.在窗体(名称为 Form1)上绘制一个名称为 Text1 的文本框和一个名称为 Commandl 的命令按钮,然后编写一个事件过程。程序运行后,如果在文本框中输入一
47、个字符,则把命令按钮的标题设置为“计算机等级考试”。以下能实现上述操作的事件过程是(分数:2.00)A.Private Sub Tex1_Change() Command1.Caption=“计算机等级考试” EndSub B.Private Sub Command1_Click() Caption=“计算机等级考试”C.Private Sub Command1_Click() TexCaption=“计算机等级考试” End SubD.Private Sub Command1_Click() TextText=-“计算机等级考试” End Sub解析:解析 本题考查文本框和命令按钮的事件过程
48、。题目要求在文本框中输入字符,则设置命令按钮的标题,因此应该编写的是文本框事件过程,而不是命令按钮事件过程。题目选项中只有选项 A 是关于文本框的事件过程,且满足题目要求,其他都是关于命令按钮的事件过程。选项 B 实现的是单击按钮则将实现 Form 的 Caption 属性改变为“计算机等级考试”;选项 C 的语法是错误的, Text 控件并没有 Caption属性;选项 D 实现单击命令按钮,在文本框中显示“计算机等级考试”。15.以下叙述中错误的是(分数:2.00)A.在 KeyUp 和 KeyDown 事件过程中,从键盘上输入 A 或 a 被视作相同的字母(即具有相同的 KeyCodB.在 KeyUp 和 KeyDown 事件过程中,将键盘上的“1”和右侧小键盘上的“1”视作不同的数字(具有不同的 KeyCodC.KeyPress 事件中不能识别键盘上某个键的按下与释放D.KeyPress 事件中可以识别键盘上某个键的按下与释放 解析:解析 本题考查键盘的相关事件。KeyUp 与 KeyDown 事件过程的 KeyCode 参数只对应按下或释放的键的 ASCII 码,而不是输入字符的 ASCII 码。也就是说,KeyCode 只针对键,按下或释放的键相同,KeyCode 值就相同,故 A、B 项说法正确。KeyPress 表