1、二级 VISUAL+BASIC 笔试-43 及答案解析(总分:92.00,做题时间:90 分钟)一、选择题(总题数:31,分数:62.00)1.下列程序段的执行结果为Dim M(10) For k=1 To 10M(k)=11-kNext kx=6Print M (2+M(x)(分数:2.00)A.2B.3C.4D.52.表示滚动条控件取值范围最大值的属性是(分数:2.00)A.MaxB.LaxgeChangeC.ValueD.Max-Min3.在窗体上绘制一个名称为 List1 的列表框,一个名称为 Labe11 的标签,列表框中显示若干个项目。当单击列表框中的某个项目时,在标签中显示被选中
2、项目的名称。下列能正确实现上述操作的程序是(分数:2.00)A.PriVate Sub List1_Click()Labell.CaptiOn=List.ListIndexEnd SubB.PriVate Sub List1_Click()Labell.Name=listl.ListIndexEnd SubC.Private Sub List1_Click()Labell.Name=Listl.TextEnd SubD.Private Sub List1_Click()Labell.Caption=List1.TextEnd Sub4.以下叙述中错误的是(分数:2.00)A.一个工程可以包括多
3、种类型的文件B.Visual Basic 应用程序既能以编译方式执行,也能以解释方式执行C.程序运行后,在内存中只能驻留一个窗体D.对于事件驱动型应用程序,每次运行时的执行顺序可以不一样5.下列关于栈的描述中错误的是(分数:2.00)A.栈是先进后出的线性表B.栈只能顺序存储C.栈具有记忆作用D.对栈的插入与删除操作中,不需要改变栈底指针6.在窗体上绘制一个命令按钮,其名称为 Command1,然后编写如下事件过程:Private Sub Command1 Click()Dim i As Integer, x As IntegerFor i=1 To 6If i=1 Then x=iIf i=
4、 4 Thenx=x+1Elsex=x+2End IfNext iPrint xEnd Sub程序运行后,单击命令按钮,其输出结果为(分数:2.00)A.9B.6C.12D.157.在窗体上画一个名称为 Listl 的列表框,为了对列表框中的每个项目都能进行处理,应使用的循环语句为(分数:2.00)A.Fori=OTOListIListCount?1NextB.Fori=0 To List1.Count?1NextC.Fori=1 To List1.ListCountNextD.For i=1 To List1.CountNext8.设窗体上有一个名为 Text1 的文本框,并编写如下程序:P
5、rivate Sub Form_Load()ShowText1.Text=“ “Text1.SetFocusEnd SubPrivate Sub Form_MouseUp(Button As Integer,Shift As Integer,X As Single,Y As Single)Print“程序设计”End SubPrivate Sub Text1_KeyDown(KeyCode As Integer,Shift As Integer)Print “Visual Basic“;End Sub程序运行后,如果在文本框中输入字母“a”,然后单击窗体,则在窗本上显示的内容是(分数:2.00
6、)A.Visual BasicB.程序设计C.Visual Basic 程序设计D.a 程序设计9.假定建立了一个名为 Command1 的命令按钮数组,则以下说法中错误的是(分数:2.00)A.数组中每个命令按钮的名称(Name 属性)均为 Command1B.数组中每个命令按钮的标题(Caption 属性)都一样C.数组中所有命令按钮可以使用同一个事件过程D.用名称 Command1(下标)可以访问数组中的每个命令按钮10.在窗体(名称为 Form1)上绘制一个名称为 Text1 的文本框和一个名称为 Commandl 的命令按钮,然后编写一个事件过程。程序运行后,如果在文本框中输入一个字
7、符,则把命令按钮的标题设置为“计算机等级考试”。以下能实现上述操作的事件过程是(分数:2.00)A.Private Sub Tex1_Change()Command1.Caption=“计算机等级考试”EndSubB.Private Sub Command1_Click()Caption=“计算机等级考试”C.Private Sub Command1_Click()Text.Caption=“计算机等级考试”End SubD.Private Sub Command1_Click()TextlText=-“计算机等级考试”End Sub11.执行如下两条语句后,窗体上显示的是a=9.8596Pr
8、int Format(a,“$00,00.00“)(分数:2.00)A.0,009.86B.$9.86C.9.86D.$0,009.8612.在窗体中添加名称为 Command1 和名称为 Command2 的命令按钮以及文本框 Text1,然后编写如下代码:Private Sub Command1 Click()Text1.Text=“AB“End SubPrivate Sub Command2 Click()Text1.Text=“CD“End Sub首先单击 Command1 按钮,然后再单击 Command2 按钮,在文本框中显示(分数:2.00)A.ABB.CDC.ABCDD.CDA
9、B13.下列对于软件测试的描述中正确的是(分数:2.00)A.软件测试的目的是证明程序是否正确B.软件测试的目的是使程序运行结果正确C.软件测试的目的是尽可能多地发现程序中的错误D.软件测试的目的是使程序符合结构化原则14.下面叙述正确的是(分数:2.00)A.算法的执行效率与数据的存储结构无关B.算法的空间复杂度是指算法程序中指令(或语句)的条数C.算法的有穷性是指算法必须能在执行有限个步骤之后终止D.以上三种描述都不对15.执行下面的程序段,x 的值为Private Sub Commandl_Click()For i=1 To 5a=a+iNext ix=Val(i)MsgBox xEnd
10、 Sub(分数:2.00)A.5B.6C.7D.816.设在工程中有一个标准模块,其中定义了如下记录类型:Type BooksName As String *10TelNum As String *20End Type在窗体上画一个名为 Command1 的命令按钮,要求当执行事件过程 Command1_Click 时,在顺序文件Person.txt 中写入一条记录。下列能够完成该操作的事件过程是(分数:2.00)A.Private Sub Command1_Click()Dim B As BooksOpen “c:/Person.txt“ For Output As #1BName=Inpu
11、tBox(“输入姓名”)BTelNum=InputBox(“输入电话号码”)Write #1,B.Name,B.TelNumClose #1End SubB.Private Sub Command1_Click()Dim B As BooksOpen “c:/Person.txt“ For Input As #1BName=InputBoC.Private Sub Command1_Click()Dim B As Booksppen “c:/Person.txt“ For Output AS #1B.Name=InputBox(“输入姓名”)B.TelNum=InputBox(“输入电话号码”
12、)Write #1,BClose#1End SubD.Privte Sub Command1_Click()Open “c:/Person.txt“ For Input As #1Name=InputBox(“输入姓名”)TelNum=InputBox(“输入电话号码”)Print#1,Name,TelNumClose #1End Sub17.在窗体上画一个名称为 Command1 的命令按钮和一个名称为 Text1 的文本框,然后编写如下事件过程:Private Sub Command1_Click()n = Val(Text1.Text)For i = 2 To nFor j = 2 To
13、 Sqr(i)If i Mod j=0 Then Exit ForNext jIf jSqr(i)Then Print iNext iEnd Sub该事件过程的功能是(分数:2.00)A.输出 n 以内的奇数B.输出 n 以内的偶数C.输出 n 以内的素数D.输出 n 以内能被 j 整除的数18.在窗体上画一个命令按钮,其名称为 Command1,然后编写如下事件过程:Private Sub Command1_Click()Dim al(4,4),a2(4,4)For i=1 To 4For j=1 To 4a1(i,j)=i+ja2(i,j)=al(i,j)+i+jNext jNext iP
14、rint al(3,3);a2(3,3)End Sub程序运行后,单击命令按钮,在窗体上输出的是(分数:2.00)A.6 6B.10 5C.7 21D.6 1219.以下关于变量作用域的叙述中,正确的是(分数:2.00)A.窗体中凡被声明为 Private 的变量只能在某个指定的过程中使用B.全局变量必须在标准模块中声明C.模块级变量只能用 Private 关键字声明D.Static 类型变量的作用域是它所在的窗体或模块文件20.下列对于线性链表的描述中正确的是(分数:2.00)A.存储空间不一定是连续,且各元素的存储顺序是任意的B.存储空间不一定是连续,且前件与元素一定存储在后件元素的前面C
15、.存储空间必须连续,且前件元素一定存储在后件元素的前面D.存储空间必须连续,且各元素的存储顺序是任意的21.在软件开发中,下面任务不属于设计阶段的是(分数:2.00)A.数据结构设计B.给出系统模块结构C.定义模块算法D.定义需求并建立系统模型22.在窗体上画一个命令按钮,命名为 CommandI。程序运行后,如果单击命令按钮,则显示一个输入对话框,在该对话框中输入一个整数,并用这个整数作为实参调用函数过程 F1,在 F1 中判断所输入的整数是否是奇数,如果是奇数,过程 F1 返回 1,否则返回 0。能够正确实现上述功能的代码是(分数:2.00)A.Privme Sub Command1_Cl
16、ick()x=InputBox(“请输入整数”)a=F1(Val(x)Print aEnd SubFunction F1(ByRef b As Integer)If b Mod 2=0 ThenReturn 0ElseReturn 1End IfEnd FunctionB.Private Sub Command1_Click()x=InputBox(“请输入整数”)a=F1(Val(x)Print aEnd SubFunction F1(ByRef b As Integer)If b Mod 2=0 ThenF1=0ElseF1=1End IfEnd FunctionC.Private Sub
17、 Command1_Click()x=InputBox(“请输入整数”)F1(Val(x)Print aEnd SubFunction F1(ByRef b As Integer)If b Mod 2=0 ThenF1=1ElseF1=0End IfEnd FunctionD.Private Sub Command1_Click()x=InputBox(“请输入整数”)F1 (Val(x)Print aEnd SubFunction F1(ByRef b As Integer)If b Mod 2=0 ThenReturn 0ElseReturn 1End IfEnd Function23.执
18、行语句 Open “Tel.dat“ For Random As #1 Len=50 后,对文件 Tel.dat 中的数据能够执行的操作是(分数:2.00)A.只能写,不能读B.只能读,不能写C.既可以读,也可以写D.不能读,不能写24.在数据库管理系统提供的数据语言中,负责数据的查询及增、删、改等操作的是(分数:2.00)A.数据定义语言B.数据转换语言C.数据操纵语言D.数据控制语言25.在窗体上绘制一个名称为 Commandl 的命令按钮,然后编写如下事件过程:Private Sub Commandl Click()c=“ABCD“For n=1 To 4Print _NextEnd S
19、ub程序运行后,单击命令按钮,要求在窗体上显示如下内容:DCDBCDABCD则在横线处应填入的内容为(分数:2.00)A.Left(c,n)B.Right(c,n)C.Mid(c,n,1)D.Mid(c,n,n)26.设 a5,b10,则执行c=Int(b-(分数:2.00)A.*Rnd+a)+1&nb27.在窗体上画一个名称为 Command1 的命令按钮,然后编写如下事件过程:Private Sub Command1_Click()c=1234c1 = Trim(Str(c)For i = 1 To 4Print _NextEnd Sub程序运行后,单击命令按钮,要求在窗体上显示如下内容1
20、121231234则在下划线处应填入的内容为(分数:2.00)A.Right(c1,i)B.Left(c1,i)C.Mid(c1,i,1)D.Mid(c1,i,28.如果一个工程含有多个窗体及标准模块,则以下叙述中错误的是(分数:2.00)A.如果工程中含有 SubMain 过程,则程序一定首先执行该过程B.不能把标准模块设置为启动模块C.用 Hide 方法只是隐藏一个窗体,不能从内存中清除该窗体D.任何时刻最多只有一个窗体是活动窗体29.以下叙述中错误的是(分数:2.00)A.在 KeyUp 和 KeyDown 事件过程中,从键盘上输入 A 或 a 被视作相同的字母(即具有相同的 KeyCo
21、de)B.在 KeyUp 和 KeyDown 事件过程中,将键盘上的“1”和右侧小键盘上的“1”视作不同的数字(具有不同的 KeyCode)C.KeyPress 事件中不能识别键盘上某个键的按下与释放D.KeyPress 事件中可以识别键盘上某个键的按下与释放30.以下叙述中错误的是(分数:2.00)A.一个工程中只能有一个 Sub Main 过程B.窗体的 Show 方法的作用是将指定的窗体装入内存并显示该窗体C.窗体的 Hide 方法和 UnLoad 方法的作用完全相同D.若工程文件中有多个窗体,可以根据需要指定一个窗体为启动窗体31.在一棵二叉树上第 5 层的结点数最多是(分数:2.00
22、)A.8B.16C.32D.15二、填空题(总题数:10,分数:30.00)32.数据管理技术发展过程经过人工管理、文件系统和数据库系统三个阶段,其中数据独立性最高的阶段是 1。(分数:3.00)填空项 1:_33.以下程序段的输出结果是_。num=0While num=2num=num+1WendPrint num(分数:3.00)填空项 1:_34.按数据流的类型,结构化设计方法有两种设计策略,它们是变换分析设计和 1。(分数:3.00)填空项 1:_35.为了使计时器控件 Timer1 每隔 0.5 秒触发一次 Timer 事件,应将 Timer1 控件的_属性设置为_。(分数:3.00
23、)填空项 1:_36.本程序的功能是利用随机函数模拟投币,方法是:每次随机产生一个 0 或 1 的整数,相当于一次投币,1 代表正面,0 代表反面。在窗体上有三个文本框,名称分别是 Text1、 Text2、Text3,分别用于显示用户输入投币总次数、出现正面的次数和出现反面的次数,如图所示。程序运行后,在文本框 Textl 中输入总次数,然后单击“开始”按钮,按照输入的次数模拟投币,分别统计出现正面、反面的次数,并显示结果。以下是实现上述功能的程序,请填空。(分数:3.00)填空项 1:_37.阅读程序:Option Base 1Private Sub Form Click()Dim a(3
24、) As IntegerPrint“输入的数据是:”;For i = 1 To 3a(i) = InputBox(“输入数据”)Print a(i);NextPrintIf a(1)a(2) Thent = a(1)a(1) = a(2)a(2)= _End IfIf a(2)a(3) Thenm = a(2)ElseIf a(1)a(3) Thenm= _Elsem= _End IfPrint “中间数是:”;mEnd Sub程序运行后,单击窗体,在输入对话框中分别输入三个整数,程序将输出三个数中的中间数,如图所示。请填空。(分数:3.00)填空项 1:_38.在窗体上画一个名称为“Comm
25、and1”、标题为“计算”的命令按钮,再画 7 个标签,其中 5 个标签组成名称为 Label1 的控件数组;名称为 Label2 的标签用于显示计算结果,其 Caption 属性的初始值为空;标签 Label3 的标题为“计算结果”。运行程序时会自动生成 5 个随机整数,分别显示在标签控件数组的各个标签中,如图所示。单击“计算”按钮,则将标签数组各元素的值累加,然后将计算结果显示在Label2 中。请填空。(分数:3.00)填空项 1:_39.为了改变计时器控件的时间间隔,应该修改该控件的 1 属性。(分数:3.00)填空项 1:_40.设在工程中有一个标准模块,其中定义了如下记录类型:Ty
26、pe BooksName As String (10TelNum As String *20End Type在窗体上添加一个名为 Command1 的命名按钮,要求当执行事件过程 Command1Click 时,在顺序文件 Person.txt 中写入一条记录。请在横线中填入适当的内容,将程序补充完整。Private Sub Command1_Click()Dim B As _Open“c:/Person.txt“ For Output As #1B.Name=InputBox(“输入姓名”)B.TelNum=InputBox(“输入学号”)Write#1, B.Name, B.TelNumC
27、lose #1End Sub(分数:3.00)填空项 1:_41.阅读程序:Sub p(b () As Integer)For i=1 To 4b(i) =2(iNext iEnd SubPrivate Sub Command1_Click()Dim a (1 To 4) As Integera(1)=5a(2)=6a(3)=7a(4)=8call p (a)For i=1 To 4Print a(i)Next iEnd Sub运行上面的程序,单击命令按钮,输出结果为 _。(分数:3.00)填空项 1:_二级 VISUAL+BASIC 笔试-43 答案解析(总分:92.00,做题时间:90 分
28、钟)一、选择题(总题数:31,分数:62.00)1.下列程序段的执行结果为Dim M(10) For k=1 To 10M(k)=11-kNext kx=6Print 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。2.表示滚动条控件取值范围最大值的属性是(分数:2.00)A.Max B.LaxgeChangeC.ValueD.Max-Mi
29、n解析:解析 本题考查滚动条的属性。滚动条常用的属性有 Max 与 Min,分别表示取值范围的最大值与最小值。LargeChange 表示 Value 值的增加量,其中 Value 值即为滚动条的当前值,故本题选 A。3.在窗体上绘制一个名称为 List1 的列表框,一个名称为 Labe11 的标签,列表框中显示若干个项目。当单击列表框中的某个项目时,在标签中显示被选中项目的名称。下列能正确实现上述操作的程序是(分数:2.00)A.PriVate Sub List1_Click()Labell.CaptiOn=List.ListIndexEnd SubB.PriVate Sub List1_C
30、lick()Labell.Name=listl.ListIndexEnd SubC.Private Sub List1_Click()Labell.Name=Listl.TextEnd SubD.Private Sub List1_Click()Labell.Caption=List1.TextEnd Sub 解析:解析 本题考查列表框的属性。列表框属性是历年考试重点,考生应多做相关练习。本题要注意区分 ListIndex 与 Text 属性。 ListIndex 指被选中项的下标,而 Text 表示被选中项的内容。List1.Listlndex 表示被选中的项本身,而 List1.Text
31、表示被选中项的内容,故本题正确答案是 D同时本题还涉及 Name 与 Caption 的区别,考生也要注意区分。4.以下叙述中错误的是(分数:2.00)A.一个工程可以包括多种类型的文件B.Visual Basic 应用程序既能以编译方式执行,也能以解释方式执行C.程序运行后,在内存中只能驻留一个窗体 D.对于事件驱动型应用程序,每次运行时的执行顺序可以不一样解析:解析 本题考查 Visual Basic 应用程序的运行与结构。Visual Basic 中一个工程可以含有多重窗体以及多种类型的文件。答案 A 是正确的。Visual Basic 应用程序的执行方式有两种:编译方式与解释方式。选项
32、 B 也是正确的。C 项理解有误,程序运行后,在内存中可以驻留多个窗体,只要没有被关闭,窗体就保留在内存中。D 项理解正确,这一点也是 Visual Basic 语言的特殊之处。5.下列关于栈的描述中错误的是(分数:2.00)A.栈是先进后出的线性表B.栈只能顺序存储 C.栈具有记忆作用D.对栈的插入与删除操作中,不需要改变栈底指针解析:解析 本题考核栈的基本概念,我们可以通过排除法来确定本题的答案。栈是限定在一端进行插入与删除的线性表,栈顶元素总是最后被插入的元素,从而也是最先能被删除的元素;栈底元素总是最先被插入的元素,从而也是最后才能被删除的元素,即栈是按照“先进后出”或“后进先出”的原
33、则组织数据的,这便是栈的记忆作用,所以选项 A 和选项 C 正确。对栈进行插入和删除操作时,栈顶位置是动态变化的,栈底指针不变,选项 D 正确。由此可见,选项 B 错误。6.在窗体上绘制一个命令按钮,其名称为 Command1,然后编写如下事件过程:Private Sub Command1 Click()Dim i As Integer, x As IntegerFor i=1 To 6If i=1 Then x=iIf i= 4 Thenx=x+1Elsex=x+2End IfNext iPrint xEnd Sub程序运行后,单击命令按钮,其输出结果为(分数:2.00)A.9 B.6C.1
34、2D.15解析:解析 本题考查控制结构中的循环结构与条件结构题目非常简单,但考生需要仔细分析结构。开始 i=1,执行 x=i 语句,此时 i=4,执行 x=x+1=2,当 i=4 是执行 x=x+2,直到 i=6 时结束 For 循环,x 的最终值是 1+1+1+2+2+2=9,正确答案为选项 A。关于 VB 的控制结构一直是考试重点,历次考试都必然会考到,考生应该注意这方面的内容,多编写程序。7.在窗体上画一个名称为 Listl 的列表框,为了对列表框中的每个项目都能进行处理,应使用的循环语句为(分数:2.00)A.Fori=OTOListIListCount?1Next B.Fori=0
35、To List1.Count?1NextC.Fori=1 To List1.ListCountNextD.For i=1 To List1.CountNext解析:解析 本题考查列表框的属性。列表框的属性是常考项目,考生要特别关注。列表框的 List 属性用来列出表项的内容,可以通过下标访问数组中的值(下标从 0 开始)。ListCount 属性列出列表框中表项的数量,它与 List 属性的区别是考试热点。本题中的 Count 并不是列表框的属性。故答案 B、D 是错误的。由于列表框中表项的排列从。开始,故答案 c 也是错误的。正确答案为 A。8.设窗体上有一个名为 Text1 的文本框,并编
36、写如下程序:Private Sub Form_Load()ShowText1.Text=“ “Text1.SetFocusEnd SubPrivate Sub Form_MouseUp(Button As Integer,Shift As Integer,X As Single,Y As Single)Print“程序设计”End SubPrivate Sub Text1_KeyDown(KeyCode As Integer,Shift As Integer)Print “Visual Basic“;End Sub程序运行后,如果在文本框中输入字母“a”,然后单击窗体,则在窗本上显示的内容是(
37、分数:2.00)A.Visual BasicB.程序设计C.Visual Basic 程序设计 D.a 程序设计解析:解析 本题考查鼠标和键盘的事件过程。题目程序实现的功能是,当在文本框中有输入时,触发Text1 KeyDown 事件,在窗体中输出“Visual Basic”,如果单击窗体,则会触发 Form MouseUp 事件,在窗体中输出“程序设计”,所以正确答案为选项 C。如果在文本框一直输入,则在窗体上会一直输出“Visual Basic”,同样,如果不停单击窗体,则在窗体上会一直输出“程序设计”。9.假定建立了一个名为 Command1 的命令按钮数组,则以下说法中错误的是(分数:
38、2.00)A.数组中每个命令按钮的名称(Name 属性)均为 Command1B.数组中每个命令按钮的标题(Caption 属性)都一样 C.数组中所有命令按钮可以使用同一个事件过程D.用名称 Command1(下标)可以访问数组中的每个命令按钮解析:解析 本题考查控件数组的概念。控件数组由一组相同类型的控件组成,这些控件共用一个相同的名字,具有同样的属性设置。数组中的每个控件都有惟一的下标,且其所有元素的 Name 属性必须相同,选项 A 说法正确。控件数组的名字是由 Name 属性指定的,而控件数组中的每个元素则是用 Index 属性指定的,选项 D 说法正确数组中每个命令按钮的标题(Ca
39、ption 属性)可以相同,也可以不同,选项 B 说法错误,应为所选。数组中所有命令按钮可以使用同一个事件过程,也可以使用不同事件过程,选项 C 说法正确。10.在窗体(名称为 Form1)上绘制一个名称为 Text1 的文本框和一个名称为 Commandl 的命令按钮,然后编写一个事件过程。程序运行后,如果在文本框中输入一个字符,则把命令按钮的标题设置为“计算机等级考试”。以下能实现上述操作的事件过程是(分数:2.00)A.Private Sub Tex1_Change()Command1.Caption=“计算机等级考试”EndSub B.Private Sub Command1_Clic
40、k()Caption=“计算机等级考试”C.Private Sub Command1_Click()Text.Caption=“计算机等级考试”End SubD.Private Sub Command1_Click()TextlText=-“计算机等级考试”End Sub解析:解析 本题考查文本框和命令按钮的事件过程。题目要求在文本框中输入字符,则设置命令按钮的标题,因此应该编写的是文本框事件过程,而不是命令按钮事件过程。题目选项中只有选项 A 是关于文本框的事件过程,且满足题目要求,其他都是关于命令按钮的事件过程。选项 B 实现的是单击按钮则将实现 Form 的 Caption 属性改变为“
41、计算机等级考试”;选项 C 的语法是错误的, Text 控件并没有 Caption属性;选项 D 实现单击命令按钮,在文本框中显示“计算机等级考试”。11.执行如下两条语句后,窗体上显示的是a=9.8596Print Format(a,“$00,00.00“)(分数:2.00)A.0,009.86B.$9.86C.9.86D.$0,009.86 解析:解析 本题考查格式输出 Format 函数解题的关键是掌握格式说明字符的理解。0 表示一个数字位,0 的个数决定了显示区段的长度,多余的位以 0 补齐;小数点与 0 结合使用,可以放在显示区段的任何位置,根据格式字符串的位置,小数部分多余的数字按
42、四舍五入处理;逗号起到分位的作用,即从小数点左边一位开始,每 3 位用一个逗号分开,其中逗号可以放在小数点左边的任何位置,但不要放在头部,也不要紧靠小数点。据此,本题正确答案为 D。12.在窗体中添加名称为 Command1 和名称为 Command2 的命令按钮以及文本框 Text1,然后编写如下代码:Private Sub Command1 Click()Text1.Text=“AB“End SubPrivate Sub Command2 Click()Text1.Text=“CD“End Sub首先单击 Command1 按钮,然后再单击 Command2 按钮,在文本框中显示(分数:2
43、.00)A.ABB.CD C.ABCDD.CDAB解析:解析 本题意在考查考生对文本框 Text 的理解。当单击 Command1 时,Text1 的 Text 变为 AB;当单击 Command2 时,Text1 的属性变为 CD,故选择 B,不能选 C,更不能选 D。13.下列对于软件测试的描述中正确的是(分数:2.00)A.软件测试的目的是证明程序是否正确B.软件测试的目的是使程序运行结果正确C.软件测试的目的是尽可能多地发现程序中的错误 D.软件测试的目的是使程序符合结构化原则解析:解析 软件测试的目标是在精心控制的环境下执行程序,以发现程序中的错误,给出程序可靠性的鉴定。测试不是为了
44、证明程序是正确的,而是在设想程序有错误的前提下进行的,其目的是设法暴露程序中的错误和缺陷。可见选项 C 的说法正确。14.下面叙述正确的是(分数:2.00)A.算法的执行效率与数据的存储结构无关B.算法的空间复杂度是指算法程序中指令(或语句)的条数C.算法的有穷性是指算法必须能在执行有限个步骤之后终止 D.以上三种描述都不对解析:解析 对于 A 选项,算法的执行效率与算法执行过程中所需基本运算的执行次数有关;B 选项,算法的空间复杂度是指执行这个算法所需要的内存空间;C 选项正确,故 D 选项不正确。15.执行下面的程序段,x 的值为Private Sub Commandl_Click()Fo
45、r i=1 To 5a=a+iNext ix=Val(i)MsgBox xEnd Sub(分数:2.00)A.5B.6 C.7D.8解析:解析 本题考查 For 循环控制语句,做好此题的关键是掌握 For 循环语句的执行过程。For 循环首先把初值赋给循环变量,接着检查循环变量的值是否超过终值,如果超过就停止执行循环体,跳出循环,执行 Next 后面的语句;否则执行一次循环体,然后把循环变量+步长的值赋给循环变量,重复上述过程。据此如果 For 循环的终值等于初值,For 循环也会执行一次循环。本题中当 For 执行第五次循环后,i 的值为 5,此时系统还会返回,令 i=5+1 并判断此时的
46、i 值是否大于 5,大于 5,故退出循环体。所以此时的 i 值为 6,故选 B。本题一般考生很容易选择 A,值得关注。16.设在工程中有一个标准模块,其中定义了如下记录类型:Type BooksName As String *10TelNum As String *20End Type在窗体上画一个名为 Command1 的命令按钮,要求当执行事件过程 Command1_Click 时,在顺序文件Person.txt 中写入一条记录。下列能够完成该操作的事件过程是(分数:2.00)A.Private Sub Command1_Click()Dim B As BooksOpen “c:/Pers
47、on.txt“ For Output As #1BName=InputBox(“输入姓名”)BTelNum=InputBox(“输入电话号码”)Write #1,B.Name,B.TelNumClose #1End Sub B.Private Sub Command1_Click()Dim B As BooksOpen “c:/Person.txt“ For Input As #1BName=InputBoC.Private Sub Command1_Click()Dim B As Booksppen “c:/Person.txt“ For Output AS #1B.Name=InputBo
48、x(“输入姓名”)B.TelNum=InputBox(“输入电话号码”)Write #1,BClose#1End SubD.Privte Sub Command1_Click()Open “c:/Person.txt“ For Input As #1Name=InputBox(“输入姓名”)TelNum=InputBox(“输入电话号码”)Print#1,Name,TelNumClose #1End Sub解析:解析 本题考查文件的打开与顺序文件中写入记录的操作。由于要写入,故顺序文件的打开方式应为 Output,所以 B、D 项错误。同时用“Write#”语句写入时,要指明写入的变量名,对于记录类型的变量,要分别写出元素,所以 C 项也是错误的,正确答案为 A。17.在窗体上画一个名称为 Command1 的命令按钮和一个名称为 Text1 的文本框,然后编写如下事件过程:Private Sub Command1_Click()n = Val(Text1.Text)For i = 2 To nFor j = 2 To Sqr(i)If i Mod j=0 Then Exit ForNext jIf jSqr(i)Then Print iNext iEnd Sub该事件过程的功能是(分数:2.00)A.输出 n 以内的奇数B.输出 n 以内的偶数C.输出 n 以