网站LOGO
2007年9月全国计算机等级考试二级笔试VB试卷及答案(二)
(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()

Print     [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

  相关文章
 
热点文章
 
热点下载
Copyright © 2007 KaoEase.Com, All Rights Reserved