全国计算机二级考试试卷_考试真题

全国计算机二级历年考试试卷-真题集
05年试卷
一、选择题((1)~(35)每小题2分,共70分
下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。 (1)数据的存储结构是指( )。 A.存储在外存中的数据 B.数据所占的存储空间量 C.数据在计算机中的顺序存储方式 D.数据的逻辑结构在计算机中的表示
(2)下列关于栈的描述中错误的是( )。 A.栈是先进后出的线性表 B.栈只能顺序存储 C.栈具有记忆作用 D.对栈的插入与删除操作中,不需要改变栈底指针
(3)对于长度为n的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是( )。A.冒泡排序为n/2 B.冒泡排序为n C.快速排序为n D.快速排序为n(n-1)/2
(4)对长度为n的线性表进行顺序查找,在最坏情况下所需要的比较次数为( )。 A.log2n B.n/2 C.n D.n+1
(5)下列对于线性链表的描述中正确的是( )。 A.存储空间不一定是连续,且各元素的存储顺序是任意的 B.存储空间不一定是连续,且前件元素一定存储在后件元素的前面 C.存储空间必须连续,且前件元素一定存储在后件元素的前面 D.存储空间必须连续,且各元素的存储顺序是任意的
(6)下列对于软件测试的描述中正确的是( )。
A.软件测试的目的是证明程序是否正确
B.软件测试的目的是使程序运行结果正确
C.软件测试的目的是尽可能多地发现程序中的错误
D.软件测试的目的是使程序符合结构化原则
(7)为了使模块尽可能独立,要求( )。
A.模块的内聚程度要尽量高,且各模块间的耦合程度要尽量强
B.模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱
C.模块的内聚程度要尽量低,且各模块间的耦合程度要尽量弱
D.模块的内聚程度要尽量低,且各模块间的耦合程度要尽量强
(8)下列描述中正确的是( )。
A.程序就是软件
B.软件开发不受计算机系统的限制
C.软件既是逻辑实体,又是物理实体 D.软件是程序、数据与相关文档的集合
(9)数据独立性是数据库技术的重要特点之一。所谓数据独立性是指( )。
A.数据与程序独立存放
B.不同的数据被存放在不同的文件中
C.不同的数据只能被对应的应用程序所使用
D.以上三种说法都不对
(10)用树形结构表示实体之间联系的模型是( )。
A.关系模型
B.网状模型
C.层次

模型
D.以上三个都是 (11)在窗体(名称为Form1)上画一个名称为Text1的文本框和一个名称为Command1的命令按钮,然后编写一个事件过程。程序运行后,如果在文本框中输入一个字符,则把命令按钮的标题设置为“计算机等级考试”。以下能实现上述操作的事件过程是( )。
A.Private Sub Text1_Change()
Command1.Caption = "计算机等级考试"
End Sub
B.Private Sub Command1_ Click ()
Caption = "计算机等级考试"
End Sub
C.Private Sub Form1_ Click ()
Text1.Caption = "计算机等级考试"
End Sub
D.Private Sub Command1_ Click ()
Text1.Text = "计算机等级考试"
End Sub
(12)设a=5,b=4,c=3,d=2下列表达式的值是( )。
3 > 2 * b Or a = c And b <> c Or c > d
A.1
B.True
C.False
D.2
(13)设a = "MicrosoftVisualBasic" ,则以下使变量b的值为“VisualBasic”的语句是( )。
A.b = Left(a, 10)
B.

该文章转载自无忧考网:https://www.360docs.net/doc/9711698271.html,/show/385392.html.b = Mid(a, 10)
C.b = Right(a, 10)
D.b = Mid(a, 11, 10)
(14)假定有如下的窗体事件过程:
Private Sub Form_Click()
a$ = "Microsoft Visual Basic"
b$ = Right(a$, 5)
c$ = Mid(a$, 1, 9)
MsgBox a$, 34, b$, c$, 5
End Sub
程序运行后,单击窗体,则在弹出的信息框的标题栏中显示的信息是( )。
A.Microsoft Visual
B.Microsoft
C.Basic
D.5
(15)设a = "a",b = "b",c = "c",d = "d",执行语句x=IIf((a
D.,”A”,”B”)后,x的值为 ( )。
A.”a”
B.”b”
C.”B”
D.”A”
(16)为了使命令按钮(名称为Command1)右移200,应使用的语句是( )。
A.Command1.Move -200
B.Command1.Move 200
C.Command1.Left = Command1.Left + 200
D.Command1.Left = Command1.Left - 200
(17)在窗体上画一个文本框,然后编写如下事件过程:
Private Sub Form_Click()
x = InputBox("请输入一个整数")
Print x + Text1.Text
End Sub
程序运行时,在文本框中输入456,然后单击窗体,在输入对话框中输入123,单击“确定”按钮后,在窗体上显示的内容为( )。
A.123
B.456
C.479
D.123456
(18)在窗体上画一个文本框和一个计时器控件,名称分别为Text1和Timer1,在属性窗口中把计时器的Interval属性设置为1000,Enabled属性设置为False。程序运行后,如果单击命令按钮,则每隔一秒钟在文本框中显示一次当前的时间。以下是实现上述操作的程序:


Private Sub Command1_Click()
Timer1.( )
End Sub
Private Sub Timer1_Timer()
Text1.Text = Time
End Sub
在下划线处应填入的内容是( )。
A.Enabled = True
B.Enabled = False
C.Visible = True
D.Visible = False
(19)假定在图片框Picture1中装入了一个图形,为了清除该图形(不删除图片框),应采用的正确方法是( )。
A.选择图片框,然后按Del键
B.执行语句Picture1.Picture = LoadPicture ("")
C.执行语句Picture1.Picture =""
D.选择图片框,在属性窗口中选择Picture属性条,然后按回车键
(20)在窗体上画一个名称为List1的列表框,一个名称为Label1的标签,列表框中显示若干个项目。当单击列表框中的某个项目时,在标签中显示被选中项目的名称。下列能正确实现上述操作的程序是:_____。
A.Private Sub List1_Click()
Label1.Caption = List1.ListIndex
End Sub
B.Private Sub List1_Click()
https://www.360docs.net/doc/9711698271.html,=List1.ListIndex
End Sub
C.Private Sub List1_Click()
https://www.360docs.net/doc/9711698271.html,=List1.Text
End Sub
D.Private Sub List1_Click()
Label1.Caption =List1.Text
End Sub (21)在窗体上画一个命令按钮,其名称为Comma


该文章转载自无忧考网:https://www.360docs.net/doc/9711698271.html,/show.asp?id=385392&Page=2nd1,然后编写如下事件过程:
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
程序运行后,单击命令按钮,其输出结果为( )。
A.9
B.6
12
D.15
(22)在窗体上画一个名称为Command1命令按钮,然后编写如下事件过程:
Private Sub Command1_Click()
c = “ABCD”
For n= 1 To 4
Print ( )
Next
End Sub
程序运行后,单击命令按钮,要求在窗体上显示如下内容
D
CD
BCD
ABCD
则在( )处填入的内容为。
A. Left(c,n)
B. Right(c,n)
Mid(c,n,1)
D. Mid(c,n,n)
(23)执行以下程序段
Dim i As Integer, x As Integer
x = 0
For i = 20 To 1 Step -2
x = x + i \ 5
Next
Print x
后,x的值为( )。
A.16
B.17
C.18
D.19
(24)在Visual Basic工程中,可以作为“启动对象”的程序是( )。
A.任何窗体或标准模块
B.任何窗体或过程
C.Sub Main过程或其他任何模块
D. Sub Main过程或任何窗体
(2

5)假定建立了一个名为Command1的命令按钮数组,则以下说法中错误的是( )。
A.数组中每个命令按钮的名称(Name属性)均为Command1
B.数组中每个命令按钮的标题(Caption属性)都一样
C.数组中所有命令按钮可以使用同一个事件过程
D.用名称Command1(下标)可以访问数组中的每个命令按钮
(26)把窗体的KeyPreview属性设置为True,然后编写如下事件过程
Private Sub Form_KeyPress(KeyAscii As Integer)
Dim ch As String
ch = Chr(KeyAscii)
KeyAscii = Asc(UCase(ch))
Print Chr(KeyAscii + 2)
End Sub
程序运行后,按键盘上的“A”键,则在窗体上显示的内容是( )。
A.A
B.B
C.C
D.D
(27)在窗体上画一个命令按钮和一个文本框,名称分别为Command1和Text1,然后编写如下程序:
Private Sub Command1_Click()
a=InputBox(“请输入日期(1~31)”)
t=”旅游景点:” _
& IIf ( a > 0 And a <= 10,”长城”,””) _
& IIf ( a >10 And a <= 20,”故宫”,””) _
& IIf ( a > 20 And a <= 31,”颐和园”,””)
Text1.Text = t
End Sub
程序运行后,如果从键盘上输入16,则在文本框显示的内容是( )。
A. 旅游景点:长城故宫
B. 旅游景点:长城颐和园
C. 旅游景点:颐和园
D. 旅游景点:故宫
(28)在窗体上画一个名称为Label1的标签,然后编写如下事件过程:
Private Sub Form_Click()
Dim arr(10, 10) As Integer
D

该文章转载自无忧考网:https://www.360docs.net/doc/9711698271.html,/show.asp?id=385392&Page=3im i As Integer, j As Integer
For i = 2 To 4
For j = 2 To 4
arr(i, j) = i * j
Next j
Next i
Label1.Caption = Str(arr(2, 2) + arr(3, 3))
End Sub
程序运行后,单击窗体,在标签中显示的内容是( )。
A.12
B.13
14
D.15
(29)在窗体上画一个名称为Command1的命令按钮,然后编写如下通用过程和命令按钮的事件过程:
Private Function fun(ByVal m As Integer)
If m Mod 2 = 0 Then
fun = 2
Else
fun = 1
End If
End Function
Private Sub Command1_Click()
Dim i As Integer, s As Integer
s = 0
For i = 1 To 5
s = s + fun(i)
Next
Print s
End Sub
程序运行后,单击命令按钮,在窗体上显示的是( )。
A.6
B.7
C.8
D.9
(30)阅读程序:
Option Base 1
Dim arr() As Integer
Private Sub Form_Click()
Dim i As Integer, j As Integer
ReDim arr(3, 2)
For i = 1 To 3
For j = 1 To 2
arr(i, j) = i * 2 + j
Next j
Next i
ReDim Preserve

arr(3, 4)
For j = 3 To 4
arr(3, j) = j + 9
Next j
Print arr(3, 2) + arr(3, 4)
End Sub
程序运行后,单击窗体,输入结果为( )。
A.21
B.13
C.8
D.25 (31)在窗体上画一个名称为Command1的命令按钮,然后编写如下程序:
Option Base 1
Private Sub Command1_Click()
Dim c As Integer, d As Integer
d = 0
c = 6
x = Array(2, 4, 6, 8, 10, 12)
For i = 1 To 6
If x(i) > c Then
d = d + x(i)
c = x(i)
Else
d = d - c
End If
Next
Print d
End Sub
程序运行后,如果单击命令按钮,则在窗体上输出的内容为( )。
A. 10
B. 16
C.12
D. 20
(32)设有如下程序:
Private Sub Command1_Click()
Dim c As Integer, d As Integer
c = 4
d = InputBox("请输入一个整数")
Do While d > 0
If d > c Then
c = c + 1
End If
d = InputBox("请输入一个整数")
Loop
Print c + d
End Sub
程序运行后,单击命令按钮,如果在输入对话框中依次输入1、2、3、4、5、6、7、8、9、0,则输出结果是( )。
A.12
B.11
10
D.9
(33)在窗体上画一个名称为Command1的命令按钮和一个名称为Text1的文本框,在文本框中输入以下字符串:Microsoft Visu
该文章转载自无忧考网:https://www.360docs.net/doc/9711698271.html,/show.asp?id=385392&Page=4al Basic Programming
然后编写如下事件过程:
Private Sub Command1_Click()
Open "d:\temp\outf.txt" For Output As #1
For i = 1 To Len(Text1.Text)
c = Mid(Text1.Text, i, 1)
If c >= "A" And c <= "Z" Then
Print #1, LCase(

End If
Next i
Close
End Sub
程序运行后,单击命令按钮,文件outf.txt中的内容是( )。
A.MVBP
B.mvbp
C.M
D.m
V v
B b
P p
(34)在窗体上画一个名称为Command1的命令按钮,然后编写如下程序:
Dim SW As Boolean
Function func(X As Integer) As Integer
If X < 20 Then
Y = X
Else
Y = 20 + X
End If
func = Y
End Function
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
SW = False
End Sub
Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
SW = True
End Sub
Private Sub Command1_Click()
Dim intNum As Integer
intNum = InputBox("")
If SW Then
Print func(intNum)
End If
End Sub
程序运行后,单击命令按钮,将显示一个输入对话框,如果在输入对话框中

输入25,则程序的执行结果为( )。
A.输出0
B.输出25
输出45
D.无任何输出
(35)设有如下通用过程:
Public Sub Fun(a() As Integer, x As Integer)
For i = 1 To 5
x = x + a(i)
Next
End Sub
在窗体上画一个名称为Text1的文本框和一个名称为Command1的命令按钮。然后编写如下的事件过程:
Private Sub Command1_Click()
Dim arr(5) As Integer, n As Integer
For i = 1 To 5
arr(i) = i + i
Next
Fun arr, n
Text1.Text = Str(n)
End Sub
程序运行后,单击命令按钮,则在文本框中显示的内容是( )。
A.30
B.25
C.20
D.15 二、填空题(每空2分,共30分)
请将每空的正确答案写在答题卡【1】~【15】序号的横线上,答在试卷上不得分。
(1)某二叉树中度为2的结点有18个,则该二叉树中有 【1】 个叶子结点。
(2)在面向对象方法中,类的实例称为 【2】 。
(3)诊断和改正程序中错误的工作通常称为 【3】 。
(4)在关系数据库中,把数据表示成二维表,每一个二维表称为 【4】 。
(5)问题处理方案的正确而完整的描述称为 【5】 。
(6)以下语句输出结果是 【6】 。
Print Int(12345.6789 * 100 + 0.5) / 100
(7)在窗体上画一个文本框和一个图片框,然后编写如下两个事件过程:
Private Sub Form_

该文章转载自无忧考网:https://www.360docs.net/doc/9711698271.html,/show.asp?id=385392&Page=5Click()
Text1.Text = "VB程序设计"
End Sub
Private Sub Text1_Change()
Picture1.Print "VB Programming"
End Sub
程序运行后,单击窗体,则在文本框中显示的内容是 【7】 ,而在图片框中显示的内容是 【8】 。
(8)阅读下面的程序:
Private Sub Form_Click()
Dim Check As Boolean, Counter As Integer
Check = True
Counter = 5
Do
Do While Counter < 20
Counter = Counter + 1
If Counter = 10 Then
Check = False
Exit Do
End If
Loop
Loop Until Check = False
Print Counter
End Sub
程序运行后,单击窗体,输出结果为 【9】 。
(9)设有如下程序:
Private Sub Form_Click()
Dim n As Integer, s As Integer
n = 8
s = 0
Do
s = s + n
n = n - 1
Loop While n > 0
Print s
End Sub
以上程序的功能是 【10】 。程序运行后,单击窗体,输出结果为 【11】 。
(10)设有如下程序:
Option Base 1
Private Sub Command1_Click()
Dim arr1
Dim Min As Integer

, i As Integer
arr1 = Array(12, 435, 76, -24, 78, 54, 866, 43)
Min = 【12】
For i = 2 To 8
If arr1(i) < Min Then 【13】
Next
Print "最小值是:"; Min
End Sub
以上程序的功能是:用Array函数建立一个含有8个元素的数组,然后查找并输出该数组中各元素的最小值。请填空。
(11)在名称为Form1的窗体上画一个文本框,其名称为Text1,在属性窗口中把该文本框的MultiLine属性设置为True,然后编写如下的事件过程:
Private Sub Form_Click()
Open "d:\test\smtext1.txt" For Input As #1
Do While Not 【14】
Line Input #1, aspect$
whole$ = whole$ + aspect$ + Chr$(13) + Chr$(10)
Loop
Text1.Text = whole$
Close #1
Open "d:\test\smtext2.txt" For Output As #1
Print #1, 【15】
Close #1
End Sub
上述程序的功能是,把磁盘文件smtext1.txt的内容读到内存并在文本框中显示出来,然后把该文本框中的内容存入磁盘文件smtext2.txt。请填空2005年4月全国计算机等级考试二级VB语言笔试答案

参考答案:

选择题:
1---5 DBDCA
6---10 CBDDC
11--15 ABBCD
16--20 CDABD
21--25 ABCDB
26--30 CDBBA
31--35 CDDDA

填空题:
【1】19
【2】 对象
【3】 程序调试


该文章转载自无忧考网:https://www.360docs.net/doc/9711698271.html,/show.asp?id=385392&Page=6 【4】 关系
【5】 算法
【6】12345.68
【7】VB程序设计
【8】 VB Programming
【9】 10
【10】 求1-8的和
【11】36
【12】 arr1(1)
【13】min=arr1(i)
【14】 EOF(1)
【15】text1.text(或whole$)
[ 结 束 ]

该文章转载自无忧考网:https://www.360docs.net/doc/9711698271.html,/show.asp?id=385392&Page=7
07年4月二级VB语言笔试试题及答案
发布时间:11-04
页 数:7页

上一篇:06年四月全国等级考试二级VB语言考前密卷(一)

下一篇:02年9月二级VB语言笔试试题及答案




--------------------------------------------------------------------------------

2007年4月全国计算机等级考试二级笔试试卷
Visual Basic语言程序设计


一、 选择题(第小题2分,共70分) 下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。请将正确选项填涂在答题卡相应位置上,答在试卷上不得分。

(1)下列叙述中正确的是(B)
A)算法的效率只与问题的规模有关,而与数据的存储结构无关
B)算法的时间复杂度是指执行算法所需要的计算工作量
C)数据的逻辑结构与存储结构是一一对应的
D)算法的时间复杂度与空间复杂度一定相关

(2)在结构化程序设计中,模块划分的原则是(D)
A)各模块应包括尽量多的功能
B)各模块的规模应尽量大
C)各模块之间的联系应尽量紧密
D)模块内具有高内聚度、模块间具有低耦合度

(3)下列叙述中正确的是(A)
A)软件测试的主要目的是发现程序中的错误
B)软件测试的主要目的是确定程序中错误的位置
C)为了提高软件测试的效率,最好由程序编制者自己来完成软件的测试工作
D)软件测试是证明软件没有错误

(4) 下面选项中不属于面向对象程序设计特征的是(C)
A)继承性
B)多态性
C)类比性
D)封装性

(5) 下列对队列的叙述正确的是(D)
A)队列属于非线性表
B)队列按“先进后出”原则组织数据
C)队列在队尾删除数据
D)队列按“先进先出”原则组织数据

(6) 对下列二叉树(C)
A


B C

D E F X

Y Z
进行前序遍历的结果为
A)DYBEAFCZX
B)YDEBFZXCA
C)ABDYECFXZ
D)ABCDEFXYZ

(7)某二叉树中有n个度为2的结点,则该二叉树中的叶子结点数为(A)
A)n+1
B)n-1
C)2n
D)n/2


(8)在下列关系运算中,不改变关系表中的属性个数但能减少元组个数的是(B)
A)并
B)交
C)投影
D)笛卡儿乘积

(9)在E—R图中,用来表示实体之间联系的图形是(C)
A)矩形
B)椭圆形
C)菱形
D)平行四边形

(10)下列叙述中错误的是(A)
A)在数据库系统中,数据的物理结构必须与逻辑结构一致
B)数据库技术的根本目标是解决数据共享问题
C)数据库技术是指己有数据管理系统的基础上建立数据库
D)数据库系统需要操作系统的支持

(11)下面可以正确定义2个整形变量和1个字符串变量的语句的是(D)
A)Dim n,m AS Interger,s AS String
B)Dim a%,b$,c AS String
C)Dim a AS Integer,b,c AS String
D)Dim x%,y AS Integer,z AS String

(12)下列表述中不能判断x是否为偶数的是(D)
A)x/2=Int(x/2)
B)x Mod 2=0
C)Fix(x/2)=x/2
D)x\2=0

13)设在名称为Myform的窗体上只有1个名称为C1的命令按钮,下面叙述中正确的是(B)
A)窗体的Click事件过程的过程名是Myform_Click
B)命令按钮的Click事件过程名是C1_Click
C)命令按钮的Click事件过程的

过程名是Command1_Click

(14)设窗体上有1个滚动条,要求单击滚动条右端的◢按钮一次,滚动条移动一定的刻度值,决定此刻度的属性是(C)
A)Max
B)Min
C)SmallChange
D)LargeChang
(15)1个二维数组可以存放1个矩形.在程序开始有语句Option Base 0,则下面定义的数组中正好可以存放1个4*3矩阵(即只有12个元素)的是(B)
A)Dim a(-2 To 0,2) AS Integer
B)Dim a(3,2) AS Ingeger
C)Dim a(4,3)AS Ingeger
D)Dim a(-1 To -4,-1 To -3)AS Ingeger

(16)若设置了文本框的属性PasswordChar=”$”,则运行程序时向文本框中输入8个任意字符后,文本框中显示的是(A)
A)8个”$”
B)1个”$”
C)8个”*”
D)无任何内容

(17)设在窗体上有1个名称为Combo1的组合框,含有5个项目,要删除最后一项,正确的语句是(B)
A)Combo1.RemoveItem Combo1.Text
B) Combo1.RemoveItem4
C) Combo1.RemoveItem Combo1.ListCount
D) Combo1.RemoveItem5

(18)工程中有2个窗体,名称分别为Form1.Form2,Form1为启动窗体,该窗体上有命令按钮Command1,要求程序运行后单击该命令按钮时显示Form2,则按钮的Click事件过程应该是(A)
A)Private Sub Command1_Click( ) B) Private Sub Command1_Click( )
Form2.Show Form2.Visible
End Sub End Sub
C) Private Sub Command1_Click( ) D)Private Sub Command1_Click( )
Load Form2 Form2.Load
End Sub End Sub

(19)若在某窗体模块中有如下事件过程(D)
Private Sub Command1_Click(Index AS Integer)
……
End Sub
则以下叙述中正确的是
A) 此事件过程与不带参数的事件过程没有区别
B) 有1个名称为Command1的窗体,单击此窗体则执行此事件过程
C) 有1个名称为Command1的空件数组,数组中有多个不同类型控件
D) 有1个名称为Command1的空件数组,数组中有多个相同类型控件

(20)以下循环语句中在任何情况下都至少执行一次循环体的是(C)
A)Do While <条件> B)While <条件>
循环体 循环体
Loop Wend

C)Do D)Do Until <条件>
循环体 循环体
Loop Until <条件> Loop

(21)在窗体上有1个名为Cd1的通用对话框,为了在运行程序时打开保存文件对话框,则在程序总应使用的语句是(A

)
A)Cd1.Action=2
B)Cd1.Action=1
C)Cd1.ShowSave=Ture
D)Cd1.ShowSave=0
 (22)下面关于菜单的叙述中错误的是(B)
A)各级菜单中的所有菜单项的名称必须唯一
B)同一子菜单中的菜单项名称必须唯一,但不同子菜单中的菜单项名称可以相同
C)弹出式菜单也用菜单编辑器编辑

(23)已知有下面的过程(D)
Private Sub proc1(a As Integer,b As String,Optional x As Boolean)
……
End Sub
正确调用此过程的语句是
A)Call procl(5)
B)Call proc1 5,”abc”,False
C)proc1(12,”abc”,True)
D)proc1 5, “abc”

(24)在窗体上有一个文件名称为Text1的文本框和1个名称为Command1的命令按钮,要求在程序执行时,每单击命令按钮一次,文本框向右移动一定距离。下面能够正确实现上述功能的程序是(C)
A)Private Sub Command1_Click() B) Private Sub Command1_Click()
Text1.Left=100 T ext1.Left= Text1.Left-100
End Sub End Sub
C)Private Sub Command1_Click() D) Private Sub Command1_Click()
Text1.Move.Text.Left+100 Text1.Move.Text.Left
End Sub End Sub

(25)某人创建了1个工程,其中的窗体名称为Form1;之后又添加了1个名为Form2的窗体,并希望程序执行时先显示Form2窗体,那么,他需要做的工作是(A)
A)在工程属性对话框中把“启动对象”设置为Form2
B)在Form1的Load事件过程中加入语句 Load Form2
C)在Form2的Load事件过程中加入语句Form2.Show
D)在Form2的TabIndex属性设置为1,把Form1的TabIndex属性设置为2

(26)窗体上有1个名称为Text1的文本框和1个名称为Command1的命令按钮。要求程序运行时,单击命令按钮,就可以把文本框中的内容写到文件out.txt中,每次写入的内容附加到文件原有内容之后。下面能够实现上述功能的程序是(C)
A)Private Sub Command1_Click() B) Private Sub Command1_Click()
Open “out.txt” For Inpit As#1 Open “out.txt” For Outpit As#1
Print#1,Text1.Text Print#1,Text1.Text
Close#1 Close#1
End Sub End Sub
C) Private Sub Command1_Click() D) Private Sub Command1_Click()
Open “out.txt” For Append As#1 Open “out.txt” For Random As#1
Print#1,Text1.Text

Print#1,Text1.Text
Close#1 Close#1
End Sub End Sub

(27)为计算1+3+5+……+99的值,某人编程如下
k=1
s=0
While k<=99
k=k+2 : s=s+k
Wend
Print s
在调试时发现运行结果有错误,需要修改。下列错误原因和修改方案中正确的是(D)
A)While …Wend循环语句错误,应改为For k=1 To 99 …Next k
B)循环条件错误,应改为Whlie k<99
C)循环前的赋值语句k=1错误,应改为k=0
D)循环中两条赋值语句的顺序错误,应改为s=s+k :
(29)在窗体上有1个名称为CommonDialog1的通用对话框和1个名称为Command1的命令按钮,以及其他一些控件。要求在程序运行时,单击Command1按钮,则显示打开文件对话框,并在选择或输入了1个文件名后,就可以打开该文件。以下是Command1_Click事件过程的两种算法
算法1:
Private Sub Command1_Click()
CommonDialog1.ShowOpen
Open CommonDialog1.FileName For Input As#1
End Sub

算法2:
Private Sub Command1_Click()
CommonDialog1.ShowOpen
IfCommonDialog1.FileName<>””Then
Open CommonDialog1.FileName For Input As#1
End If
End Sub
下面关于这两种算法的叙述中正确的是(B)
A) 显示打开文件对话框后若未选择或输入任何文件名,则算法2会出错,算法1不会
B) 显示打开文件对话框后若未选择或输入任何文件名,则算法1会出错,算法2不会
C) 两种算法的执行结果完全一样
D) 算法1允许输入的文件名中含有空格,而算法2不允许

(30)窗体上有1个名称为List的列表框,其中已经输入了若干个项目(如图所示):还有2个文本框,名称分别为Text1、Text2, 1个名称为 Command1的命令按钮,并有以下程序
Private Sub Command1_Click()
Dim str As String, s As String, k As Integer
s=Text1
Str=””
For k=List1.ListCount-1 to 0 Step-1
If InStr(List.List(k),s)>0 then
str=str&List.List(k)&” ”
End If
Next k
If str=””Then
Text2=”没有匹配的项目”
Else
Text2=str
End If
End Sub

程序运行时,在Text1中输入“京”,单击命令按钮,则在Text2中显示的内容是(C)
A) 京
B) 北京 南京
C) 南京
D) 没有匹配的项目

(31)在窗体上

画1一个名称为Command1的命令按钮,并编写以下程序
Private Sub Command1_Click()
Print fun(“ABCDEFG”)
End Sub
Function fun(st As String) As String
stlen=Len(st)
temp=””
For k
fun=temp
End Function
程序运行时,单击命令按钮,则窗体上显示的是(B)
A)ABCDEFG
B)AGBFCE
C)GFEDCBA
D)AGBFCED

(32)在窗体上先后画2个图片框,名称分别为Picture1和banana,banana中添加了香蕉图片(见图1),且将banana.DragMode属性设置为1。要求程序运行时,可以用鼠标把banana拖拽到Picture1中(见图2)。能实现此功能的事件过程是(C)
A) Priate Sub Form_DragDrop(Source As Control,X As Single,Y As Single banana.Move Picture1.Left+X,Picture1.Top+Y)
End Sub
B)Private Sub banana _DragDrop(Source As Control,X As Single,Y As Single )
Source.Move Picture1.Left+X.Picture1.Top+Y
End Sub
C) B)Private Sub Picture1_DragDrop(Source As Control,X As Single,Y As Single )
Source.Move Picture1.Left+X.Picture1.Top+Y
End Sub
D) B)Private Sub Picture1_DragDrop(Source As Control,X As Single,Y As Single )
banana.Move banana.Left+X, banana.Top+Y
End Sub

(33)在窗体上画1个名称为Command1的命令按钮,然后编写如下事件过程
Option Base 1
Pribate Sub Command1_Click()
Dim a(5.5) As Integer
For i=1 To 5
a(I,j)*5\10
Next j
Next i
S=0
For i=1 To 5
S=s+a(i,i)
Next i
Print s
End Sub
程序运行后,单击命令按钮,输出结果是(A)
A) 15
B)13
C)11
D)9

(34)在窗体上从左到右有Text1、Text2两个文本框(见图),要求程序运行时,在Text1中输入1个分数后按回车键,则判断分数的合法性,若分数为0~100中的1个数,周围光标移到Text2中;否则光标不动,并弹出对话框显示“分数错”,下面程序中正确的是(D)
A)Private Sub Text1__KeyPress(KeyAscii AS Integer)
If KeyAscii=13 Then ‘回车符的ACSII码是13
a=Val(Text1)
If a>=0 or a<=100 Then
Text2.SetFocus
Else
Text1. SetFocus ; MsgBox(“分数错”)
End If
End If
End Sub
B) Private Sub Text1__KeyPress(KeyAscii AS Integer)
If KeyAscii=13 Then ‘回车符的ACSII码是13
a=Val(Text1)
If a>=0 And a<=100 Then
Text1.SetFocus
Else
Text2. SetFocus ; MsgBox(“分数错”)
End If
End If
End Sub
C) Priv

ate Sub Text1__KeyPress(KeyAscii AS Integer)
If KeyAscii=13 Then ‘回车符的ACSII码是13
a=Val(Text1)
If a<0 And a>100 Then
Text2.SetFocus
Else
Text1. SetFocus ; MsgBox(“分数错”)
End If
End If
End Sub
D) Private Sub Text1__KeyPress(KeyAscii AS Integer)
If KeyAscii=13 Then ‘回车符的ACSII码是13
a=Val(Text1)
If a>=0 And a<=100 Then
Text2.SetFocus
Else
Text1. SetFocus ; MsgBox(“分数错”)
End If
End If
End Sub

(35)在窗体上画2个命令按钮,名称分别为Command1、command2,并编写如下程序
Const n=5,m=4
Dim a(m,n)
Private Sub Command1_Click()
K=1
For i=1 To m
For j=1 To n
a(i,j)=k
k=k+1
Next j
Next i

Private Sub Command2_Click()
Summ=0
For i=1 To m
For j=1 To n
If i=1 Or i=m Then
Summ=summ+a(i,j)
Else
If j=I Or j=n Then
Summ=summ+a(i,j)
End If
End If
Next j
Next i
Print summ
End Sub
过程Command1_Click()的作用是二维数组a 中存放1个 m行n列的矩阵;过程Command2_Click()的作用是(A)
A) 计算矩阵外围一圈元素的累加和
B) 计算矩阵除外一圈以外的所有元素的累加和
C) 计算矩阵第1列和最后一列元素的累加和
D) 计算矩阵第1行和最后一行元素的累加和
二、填空题(每空2分,共30分)
请将每一个空的正确答案写在答题纸上[1]~[15]序号的横线上,答在试卷上,答在试卷上不得分,
注意:以命令关键字填空的必须写完整
(1) 在深度为7的满二叉树中,度为2的结点个数为___63_____。

(2) 软件测试分为白箱(盒)测试和黑箱(盒)测试,等价类划分法属于__黑箱(或黑盒) 测试。

(3) 在数据库系统中,实现各种数据管理功能的核心软件称为 数据库管理系统(DBMS)_____。

(4) 软件生命周期可分为多个阶段,一般分为定义阶段、开发阶段和维护阶段。编码和测试属于 开发_____阶段。

(5)在结构化分析使用的数据流图(DFD)中,利用 数据字典 对其中的图形元素进行确切解释。

(6)1+ + + +…….n 最大的n。请填空
Private Sub Command1__Click()
Dim s ,m,n AS Integer
m=Val(InputBox(“请输入一个大于100的整数”))
n= 0
s=

0
Do While s N=n+1
S=s+n*n
Loop
Print “满足不等式的最大n是 n-1
End Sub

(7)下面程序的功能是把文件file11.txt中重复字符去掉后(即若有多个字符相同,则只保留1个)写入文件file2.txt。请填空。
Private Sub Command1__Click()
Dim inchar AS String,temp AS String,outchar AS String
Outchar=” ”
Open=”file1.txt” For Input AS #1
Open=”file2.txt” For Output AS #2
n=LOF( 1 )
inchar=Input$(n,1)
For k=1 To n
temp=Mid(inchar,k,1)
If InStr(outchar,temp)= 0 Then
outchar=outchar & temp
End If
Next k
print #2, outchar
close #2
close #1
End Sub

(8)在窗体上先画1个名为Text1的文本框和平个名为Label1的标签,再画1个名为OP1的有4个单选按钮数组,其Index属性按季度顺序为0∽3(见图1)。在文件sales.txt中按月份顺序存有某企业某年12个月的销售额。要求在程序执行时,鼠标单击1个单选按钮,则Text1中显示相应季度的销售总额,并把相应的文字显示在标签上。图2是单击“第3季度”单选按钮产生的结果。请填空。

Dim sales(12) As Long
Private Sub Form__Load()
open “sales.txt” For Input AS #1
For k=1 To 12
Input #1,sales(k)
Next k
Close #1
End Sub

Private Sub Op1_Click (Index, AS Integer)
Dim sum AS Long ,k AS Ingeger,month AS Ingeger
sum=0
month=Index* 3
For k=1 To 3
month=month+1
sum=sum+sales(month)
Next k
Label1.Caption=Opl(Index). Caption & “销售总额:”
Text1=sum
End Sub


(9)某人编写如下函数来判断a是否为素数,若是,则函数返回True;否则返回False
Function Prime(a As Integer)AS Boolean
Dim k As Interger,isprime AS Boolean
If a<2 Then
isprime=False
Else
isprime=True
k=2
Do While k If a Mod k=0 Then
isprime=False
ELSE
k=k+1
End IF
LOOP
End If
prime=isprime
End Function
在测试时发现有1个非素数也被判断为素数,这个错判的数是 4
2007年4月全国计算机等级考试二级VB语言笔试试题答案

选择题:

1-10 cdacd cabaa

11-20 ddbcd abadc

21-30 bbdca cddbc

31-35 bcada


填空:

63 黑盒测试 DBMS 开发阶段 数据词典 0 N-1 #2 1 0
outchar op1_click 3 caption 4



07年9月全国计算机二级VB笔试含答案
引用地址:https://www.360docs.net/doc/9711698271.html,/b941278/d6*******.htm [复制│超文本复制] 返回《

金牌计算机二级..》 关闭窗口


13887330 dxjzsyt 发表于:08-03-10 09:50


123456

一个家具系无赖的自白
[东大传说] 那个女孩[紫金之巅] 二食堂中锅菜[军理工FOREVER] 蝴蝶[大学生社区] 逝去童年,沾染尘埃[雨中情-雨花台...] 19路公交车(版里好久没人..[南农之浦口风云] 你!就要毕业了....[九中情] 徐武老师是九中的君子[江苏经贸学院论..] 如果我们分手了,你会怎样..[倾城晓庄] 今年夏天


2007年9月全国计算机等级考试二级笔试试卷
Visual Basic语言程序设计
(考试时间90分钟,满分100分)
一、选择题(每小题2分,共70分)
下列各题A) 、B) 、C) 、D)四个选项中,只有一个选项是正确的。请将正确选项填涂在答题卡相应位置上,答在试卷上不得分。
(1)软件是指
A)程序 B)程序和文档
C)算法加数据结构 D)程序、数据与相关文档的完整集合
(2)软件调试的目的是
A)发现错误 B)改正错误
C)改善软件的性能 D)验证软件的正确性
(3)在面向对象方法中,实现信息隐蔽是依靠
A)对象的继承 B)对象的多态
C)对象的封装 D)对象的分类
(4)下列叙述中,不符合良好程序设计风格要求的是
 A)程序的效率第一,清晰第二 B)程序的可读性好
 C)程序中要有必要的注释 D)输入数据前要有提示信息
(5)下列叙述中正确的是
A)程序执行的效率与数据的存储结构密切相关
B)程序执行的效率只取决于程序的控制结构
C)程序执行的效率只取决于所处理的数据量
D)以上三种说法都不对
(6)下列叙述中正确的是
A)数据的逻辑结构与存储结构必定是一一对应的
B)由于计算机存储空间是向量式的存储结构,因此,数据的存储结构一定是线性结构
C)程序设计语言中的数组一般是顺序存储结构,因此,利用数组只能处理线性结构
D)以上三种说法都不对
(7)冒泡排序在最坏情况下的比较次数是
A)n(n+1)/2 B)nlog2 n C)n(n-1)/2 D)n/2
(8)一棵二叉树中共有70个叶子结点与80个度为1的结点,则该二叉树中的总结点数为
A)219 B)221 C)229 D)231
(9)下列叙述中正确的是
A)数据库系统是一个独立的系统,不需要操作系统的支持
B)数据库技术的根本目标是要解决数据的共享问题
C)数据库管理系统就是数据库系统
D)以上三种说法都不对
(10)下列叙述中正确的是
A)为了建立一个关系,首先要构造数据的逻辑关系


B)表示关系的二维表中各元组的每一个分量还可以分成若干数据项
C)一个关系的属性名表称为关系模式
D)一个关系可以包括多个二维表
(11)要使一个文本框可以显示多行文本,应设置为True的属性是
A)Enabled B)MultiLine C)MasLenfth D)Width
(12)在窗体上有一个名为Text1的文本框。当光标在文本框中时,如果按下字母键“A”,则被调用的事件过程是
A)Form_KeyPress() B)Text1_LostFocus()
C)Text1_Click() D)Test1_Change()
(13)设在窗体上有一个名称为Command1的命令按钮和一个名称为Text1的文本框。要求单击Command1按钮时可把光标移到文本框中。下面正确的事件过程是
A)Private Sub Command1_Click() B)Private Sub
Text1.GotFocus Command1.GotFocus
End Sub EndSub
C)Private Sub Command1_Click() D)Private Sub
Text1.SetFocus Command1.SetFocus
End Sub End Sub
(14)执行以下程序后输出的是
Private Sub Command1_Click()
Ch$=”AABCDEFGH”
Print Mid(Righ(ch$,6),Len(left(ch$,4)),2)
End Sub
A)CDEFGH B)ABCD C)FG D)AB
(15)设在窗体Form1上有一个列表框List1,其中有若干个项目。要求单击列表框中某一项时,把该项显示在窗体上,正确的事件过程是
A)Prvate Sub List1_Click() B)Private Sub Form1_Click()
Print List1.Text Print List1.Text
End Sub End Sub
C)Private Sub List1_Click() D)Private Sub Form1_Click()
Print Form1.Text List1.Print List1.Text
End Sub End Sub
(16)若窗体上的图片框中有一个命令按钮,则此按钮的Left属性是指
A)按钮左端到窗体左端的距离 B)按钮左端到图片框左端的距离
C)按钮中心点到窗体左端的距离 D)按钮中心点到图片框左端的距离
(17)为使程序运行时通用对话框CD1上显示的标题为“对话框窗口”,若通过程序设置该标题,则应使用的语句是
A)CD1.DialogTitle=“对话框窗口” B)CD1.Action=“对话框窗口”
C)CD1.FileName=“对话框窗口” D)CD1.Filter=“对话框窗口”
(18)在窗体上有如右图所示的控件,各控件的名称
与其标题相同,并有如下程序:
Private Sub Form_Load()
Command2.Enabled=False
Check1.value=1
End Sub
刚运行程序时,看到的窗体外观是:

(19)设在窗体中有一个名称为List1的列表框,其中有若干个项目(如图)。要求选中某一项后单击Command1按钮,就删除选中的项,则正确的事件过程是
A)Private Sub Command1_Click()
List1.Clear
End Sub
B) Private Sub Command1_Click()
List1.Clear List1.ListIndex
End Sub
C) Private Sub Command1_Click()
List1.Removeltem List1.ListIndex
End Sub
D) Private Sub Command1_Click()
List1.Removeltem
End Sub
(20)某人设计了如下程序用来计算并输出7!(7的阶乘)
Private Sub Command1_Click()
t=0
For k=7 To 2 Step -1
t=t*k
Next
Print t
End Sub
执行程序时,发现结果是错误的,

下面的修改方案中能够得到正确结构的是
A)把t=0改为t=1
B)把For k = 7 To 2 Step -1改为For k =7 To 1 Step -1
C)把For k = 7 To 2 Stip-1改为Fork=1 To 7
D)把Next改为Nexi k
(21)若窗体中已经有若干个不同的单选按钮,要把它们改为一个单选按钮数组,在属性窗口中需要且只需要进行的操作是
A)把所有单选按钮的Index属性改为相同值
B)把所有单选按钮的Index 属性改为连续的不同值
C)把所有单选按钮的Caption属性值改为相同
D)把所有单选按钮的名称改为相同,且把它们的Index属性改为连续的不同值。
(22)窗体上有文本框Text1和一个菜单,菜单标题、名称如表,结构见图。要求程序执行时单击“保存”菜单项,则把其标题显示在Text1文本框中。下面可实现此功能的事件过程是:
标题 名称
文件 file
新建 new
保存 save
A)Private Sub save_Click() B)Private Sub save_Click()
Text1.Text=file.save.Caption Text1.Text=save.Caption
End Sub End Sub
C)Private Sub file_Click() D)Private Sub file_Click()
Text1.Text=file.save.Caption Text1.Text=save.Caption
End Sub End Sub
(23)某人在窗体上画了一个名称为Timer1的计时器和一个名称为Lab
的属性设置为Enabled=True, Interval=0,并编程如下。希望在每2秒在标签上显示一次系统当前时间。
Private Sub Timer1_Timer()
Label1.Caption=Time$
End Sub
在程序执行时发现未能实现上述目的,那么,他应做的修改是
A)通过属性窗口把计时器的Interval属性设置为2000
B)通过属性窗口把计时器的Enabled属生设置为False
C)把事件过程中的Label1.Caption=Time$语句改为Timer1.Interval=Tims$
D)把事件过程中的Label1.Caption=Time$语句改为Label1.Caption=Timer1.Time
(24)形状控件的Shape属性有6种取值,分别代表6种几何图形。下列不属于这6种几何图形的是

(25)下面关于文件的叙述中错误的是
A)随机文件中各条记录的长度是相同的]
B)打开随机文件时采用的文件存取方式应该是Random
C)向随机文件中写数据应使用语句Print#文件号
D)打开随机文件与打开顺序文件一样,都使用Open语句
(26)设窗体上有一个图片框Picture1,要在程序运行期间装入当前文件夹下的图形文件File1.jpg,能实现此功能的语句是
A)Picture1.Picture=”Flie1.jpg
B)Picture1.Picture=LoadPicture(“File1.jpg”)
C) LoadPicture(“File1.jpg”)
D)Call LoadPicture(“File1.jpg”)
(27)下面程序执行时,在窗体上显示的是
Private Sub Command1_Click()
Dim a(10)
For k = 1 To 10
a(k) = 11 – k
Next k
Print a(a(3)\a(7) Mod a(5))
End Sub
A)3 B)5 C)7
(28)为达到把a、b中的值交换后输出的目的,某人编程如下:
Private Sub Command1_Click()
a% = 10:b% = 20
Call swap(a,b)
Print a,b
End Sub
Private Sub swap(ByVal a As In

teger,ByVal b As Integer)
c= a:a=b:b=c
End Sub
在运行时发现输出结果错了,需要修改。下面列出的错误原因和修改方案中正确的是
A)调用swap过程的语句错误,应改为Call swap a,b
B)输出语句错误,应改为:Print ”a”,”b”
C)过程的形式参数有错,应改为:swap(ByRef a As Integer,ByRef b As Integer)
D)swap中3条赋值语句的顺序是错误的,应改为a=b:b=c:c=a
(29)有如下函数:
Function fun(a As Integer,n As Integer) As Integer
Dim m As Integer
While a >=n
a=a-n
m= m+1
Wend
fun=m
End Function
该函数的返回值是
A)a乘以n的乘积 B)a加n的和
C)a减n的差 D)a除以n的商(不含小数部分)
(30)下面程序的输出结果是
Private Sub Command1_Click()
ch$=”ABCDEF”
proc ch
Print ch
End Sub
Private Sub proc(ch As String)
S=””
For k=Len(ch) To 1 Step-1
s=s&Mid(ch,k,1)
Next k
ch=s
End Sub
A)ABCDEF B)FEDCBA C)A D)F
(31)某人编写了一个能够返回数组a中10个数中最大数的函数过程,代码如下:
Function Maxvalue(a() As Integer) As Integer
Dim max%
max=1
For k = 2 To 10
If a(k)>a(max) Then
max = k
End If
Next k
Maxvalue = max
End Function
程序运行时,发现函数过程的返回值是错的,需要修改,下面的修改方案中正确的是
A)语句max = 1应改为max = a(1)
B)语句For k = 2 To 10应改为For k = 1 To 10
C)If语句中的条件a(k)>a(max)应改为a(k)>max
D)语句Maxvalue = max 应改为Maxvalue = a(max)
(32)在窗体上画一个名称为Command1的命令按钮,并编写以下程序:
Private Sub Command1_Click()
Dim n%,b,t
t = 1:b = 1:n = 2
Do
b = b*n
t = t + b
n = n +1
Loop Until n>9
Print t
End Sub
此程序计算并输出一个表达式的值,该表达式是
A)9! B)10! C)1!+2!+…+9! D)1!+2!+…+10!
(33)有一个名称为Form1的窗体,上面没有控件,设有以下程序(其中方法Pset(X,Y)的功能是在坐标X,Y处画一个点):
Dim cmdmave As Boolean
Private Sub Form_MouseDown(Button As Integer,Shift As Integer, X As Single,Y As Single)
cmdmave = True
End Sub
Private Sub Form_MouseMove(Button As Integer,Shift As Integer, X As Single, Y As Single)
If cmdmave Then
Form1.Pset(X,Y)
End If
End Sub
Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single,Y As Single)
cmdmave = False
End Sub
此程序的功能是
A)每按下鼠标键一次,在鼠标所指位置画一个点
B)按下鼠标键,则在鼠标所指位置画一个点;放开鼠标键,则此点消失
C)不按鼠标键而拖动鼠标,则沿鼠标拖动的轨迹画一条线
D)按下鼠标键并拖动鼠标,则沿鼠标拖动的轨迹画一条线,放开鼠标键则结束画线
(34)某人设计了下面的函数fun,功能是返回参数a中数值的位数
Function fun(a As Integer) As Integer
Dim n%
n = 1
While a \ 10 >= 0
n = n + 1

a = a \ 10
Wend
fun = n
End Function
在调用该函数时发现返回的结果不正确,函数需要修改,下面的修改方案中正确的是
A)把语句n = 1改为n = 0
B)把循环条件a \ 10 >= 0改为a \ 10 > 0
C)把语句 a = a \ 10改为a = a Mod 10
D)把语句fun = n改为 fun = a
(35)在窗体上有一个名称为Check1的复选框数组
(含4个复选框),还有一个名称为Text1的文本
框,初始内容为空。程序运行时,单击任何复选
框,则把所有选中的复选框后面的方字罗列在文
本框中(见图)。下面能实现此功能的事件过程是
A)Private Sub Check1_Click(Indes As Integer)
Text1.Text =""
For k = 0 To 3
If Check1(k).value = 1 Then
Text1.Text = Text1.Text & Check1(k).Caption & " " '双引号中是空格
End If
Next k
End Sub
B)Private Sub Check1_Click(Index As Integer)
For k = 0 To 3
If Check1(k).value = 1 Then
Text1.Text = Text1.Text & Check1(k).Caption & " " '双引号中是空格
End If
Next k
End Sub
C)Private Sub Check1_Click(Index As Integer)
Text1.Text = ""
For k = 0 To 3
If Check1(k).value = 1 Then
Text1.Text = Text1.Text & Check1(Index).Caption & " " '双引号中是空格
End If
Next k
End Sub
D)Private Sub Check1_Click(Index As Integer)
Text1.Text = ""
For k = 0 To 3
If Check1(k).value = 1 Then
Text1.Text = Text1.Text & Check1(k).Caption & " " '双引号中是空格
Exit For
End If
Next k
End Sub

二、填空题(每空2分,共30分)
请将每空的正确答案写在答题卡[1]~[15]序号的横线上,答在试卷上不得分。
(1)软件需求规格说明书应具有完整性,无岐义性、正确性、可验证性、可修改性等特征,其中最重要的是【1】 。
(2)在两种基本测试方法中,【2】 测试的原则之一是保证所测模块中每一个独立路径至少执行一次。
(3)线性表的存储结构主要分为顺序存储结构和链式存储结构。队列是一种特殊的线性表,循环队列是队列的【3】 存储结构。
(4)对下列二叉树进行中序遍历的结果为【4】 。

(5)在E-R图中,矩形表示【5】 。
(6)窗体上有一个组合框,其中已输入了
若干个项目。程序运行时,单击其中一
项,即可把该项与最上面的一项交换。
例如:单击图1中的“重庆”,则与“北
京”交换,得到图2的结果。下面是可
实现此功能的程序,请填空。
Private Sub Combo1_Click()
Dim temp
temp = Combo1.Text
[6] = Combo1.List(0)
Combo1.List(0) = temp
End Sub
(7)设窗体上有一个名称为HScroIII的水平滚动条,要求当滚动块移动位置后,能够在窗体上输出移动的距离(即新位置与原位置的刻度值之差,向右移动为正数,向左移动为负数)。下面是可实现此功能的程序,请填写。
Dim [7] As Integer
Private Sub Form_Load()
pos=HScroIII.value
End Sub
Private Sub HScroIII_Change()
P

rint [8] -pos
pos=HScroIII.value
End Sub
(8)设窗体上有一个名称为CD1的通用对话框,一个名称为Text1的文本框和一个名称为Command1的命令按钮。程序执行时,单击Command1按钮,则显示打开文件对话框,操作者从中选择一个文本文件,并单击对话框上的“打开”按钮后,则可打开该文本文件,并读入一行文本,显示在Text1中。下面是实现此功能的事件过程,请填空。
Private Sub Command1_Click()
CD1.Filter ="文本文件1*.txt(Word 文档)*.doc"
CD1.Filterinder = 1
CD1.ShowOpen
If CD1.FileName<>""Then
Open [9] For Input As #1
Line Input #1,ch$
Close #1
Text1.Text = [10]
End If
End Sub
(9)下面的程序执行时,可以从键盘输入一个正整数,然后把该数的每位数字按逆序输出。例如:输入7685,则输出5867,输入1000,则输出0001。请填空。
Private Sub Command1_Click()
Dim x As Integer
x=InputBox(“请输入一个正整数”)
While x>__[11]___
Print x Mod 10;
x=x\10
Wend
Print__[12]__
End Sub
(10)有如图所示的窗体。程序执行时先在Text1文本框中输入编号,当焦点试图离开Text1时,程序检查编号的合法性,若编号合法,则焦点可以离开Text1文本框;否则,显示相应错误信息,并自动选中错误的字符,且
焦点不能离开Text1文本框(见图)。
合法编号的组成是:前2个字符是大写英文
字母,第3个字符是“-”,后面是数字字符
(至少1个)。下面程序可实现此功能,请
填空。
Private Sub Text1_Lostfocus()
Dim k%,n%
n=Len( [13] )
For k=1 to if (n>3,n,4)
c=Mid(Text1. Text,k,1)
Select Case k
Case 1,2
If c<"A" Or c>"Z" Then
MsgBox("第"&k&"个字符必须是大写字母!")
SetPosition k
Exit For
End If
Case 3
If c<>"-" Then
MsgBox("第"&k&"个字符必须是字符"'"-"'")
SetPosition k
Exit For
End If
Case Else
If c<"0" Or c>"9" Then
MsgBox("第"&k&"个字符必须是数字!")
SetPosition k
Exit For
End If
End Select
Next k
End Sub

Private Sub SetPosition(pos As Integer)
Text1.SelStart=pos-1
Text.SelLength= [14]
Text1. [15]
End Sub


2007年9月全国计算机等级考试二级VB参考答案
一、选择题
1-5 DBCAA
6-10 CCABA
11-15 BDCCA
16-20 BAACA
21-25 DBABC
26-30 BDCDB
31-35 DCDBA
二、填空题
1、无歧义性
2、白盒测试
3、顺序
4、ACBDFEHGP
5、实体集
6、Combol1.List(Combol1.ListIndex)
7、pos
8、HScroll1.value
9、CD1.FileName
10、ch
11、10
12、x
13、Text1.Text
14、1
15、SetFocus

2004年9月全国计算机等级考试二级VB语言笔试试题及答案 计算机二级考试 免费试听课程 收藏本页 2004/12/15 保存本文
一、选择题 ((1)~(20)每小题2分,(21)~(30)每小题3分,共70分下列各题 A)、
B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项填涂在答题卡相应位置上,

相关文档
最新文档