文档库 最新最全的文档下载
当前位置:文档库 › VB期末考试卷(2009-2010-1)a

VB期末考试卷(2009-2010-1)a

7. 设窗体上有一个标签Label1和一个计时器Timer1,Timer1的Interval属性被设置为1000,

Enabled属性被设置为True,要求程序运行时每秒在标签中显示一次系统当前时间。以下可以实现上述要求的事件过程是()。

A. Private Sub Timer1_Timer()

Label1.Caption = True End Sub

C. Private Sub Timer1_Timer()

Label1.Interval = 1 End Sub B. Private Sub Timer1_Timer()

Label1.Caption = Time$ End Sub

D. Private Sub Timer1_Timer()

Label1.Text = Time

End Sub

8. 若看到程序中有以下事件过程,则可以肯定的是,当程序运行时()。

Private Sub Click_MouseDown(Button As Integer, Shift As Integer, X As Single, _ Y As Single)

If Button = 2 Then Print “VB Program”

End Sub

A. 鼠标右键按下Command1对象,执行此过程

B. 鼠标右键单击Click对象,执行此过程

C. 鼠标左键单击Click对象,执行此过程

D. 鼠标左键按下MouseDown对象,执行此过程

9. 窗体上有名为Option1的单选按钮,则以下语句中与If Option1.Value = True Then不等价

的是()。

A. If Option1.Value Then

B. If Option1 = True Then

C. If Value = True Then

D. If Option1 Then

10. 文本框Text1的KeyDown事件过程如下:

Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)

End Sub

其中参数KeyCode的值表示的是发生此事件时()。

A. 是否按下了Shift键

B. 按下的是哪个数字键

C. 所按的键盘键的键码(扫描码)

D. 所按的键盘键的Ascii码

11. 窗体上有一个用菜单编辑器设计的菜单。运行程序,并在窗体上单击鼠

标右键,则弹出快捷菜单。如图所示。以下叙述中错误的是()。

A. 在设计“粘贴”菜单项时,在菜单编辑器窗口中设置“有效”属性

(有“√”)

B. 菜单中的横线是在该菜单项的标题输入框中输入了一个“-”(减号)

字符

C. 在设计“选中”菜单项时,在菜单编辑器窗口中设置“复选”属性(有“√”)

D. 在设计该弹出菜单的主菜单项时,在菜单编辑器窗口中去掉了“可见”前面的“√”

二、填空题〖每空2分,共计50分〗;

1. 为了在运行时把d:\pic 文件夹下的图形文件a.jpg 装入图片框picture1,所使用的语句为

(1) 。

2. 在窗体上画一个名称为Command1的命令按钮,然后编写如下程序:

Private Sub Command1_Click()

CommonDialog1.Filter = "All Files|*.*|Text Files|*.txt|Batch Files|*.bat" CommonDialog1.FilterIndex = 2 CommonDialog1.ShowOpen End Sub

程序运行后,单击命令按钮,此时在打开的对话框“文件类型”框中显示的是 (2) 。 3. VB 提供了结构化程序设计的三种基本结构,分别是顺序结构、分支结构和 (3) 结构。 4. 如图所示有两个列表框,左侧List1列表框可以多项选择,请完善以下程序,要求双击List1

中的某一项时,被选中的项目被添加到右侧List2中,同时清除List1中相应项目,若单击按钮,List1中所有选中的项目显示在List2中,而List1中的内容不变。 Private Sub List1_DblClick() List2.AddItem List1.Text List1. (4) End Sub

Private Sub Command1_Click() For i = 0 To (5)

If List1.Selected(i) Then List2. (6) Next End Sub

5. 下面的事件过程执行结束后,K 的值是 (7) ,程序中第二个循环被执行了 (8) 次,

程序中第三个循环被执行了 (9) 次。 Option Base 1

Private Sub Command1_Click()

Dim A(10) As Integer, i As Integer, K As Integer For i = 1 To 10 A(i) = 1 Next i K = 4

For K = 1 To K Step K A(K) = 0

本题 得分

8. 以下程序功能:利用图片框输出3*4矩阵A中每一行的最大值以及最大值所在的列(矩阵中

的数据在[50, 90]内随机整数),请完善代码。

Dim A(1 To 3, 1 To 4) As Integer

Private Sub CmdRowMax_Click()

Dim i As Integer, j As Integer, k As Integer

For i = 1 To 3

(14)

For j = 2 To 4

If (15) Then k = j

Next j

Picture1.Print "第" & i & "行的第" & k & "列元素" & A(i, k) & "为最大值"

Next i

End Sub

Private Sub InitA_Click()

Dim i As Integer, j As Integer

Randomize

For i = 1 To 3

For j = 1 To 4

A(i, j) = (16)

Picture1.Print (17)

Next j

(18)

Next i

End Sub

9. 下面程序的功能是:将用户在文本框TxtA和TxtB中输入的任意多个无序数据(数据之间用

空格分隔)进行递增有序插入合并,最后

在右侧的文本框TxtAB中显示输出,要求

每行显示4个数据。试完善程序。

Private Sub CmdSortUnion_Click()

Dim i As Integer, A, B, x

A = Split(TxtA)

B = Split(TxtB)

Call Sort(A)

For i = LBound(B) To UBound(B)

(19)

Next i

行号程序代码

1. Option Explicit

2. Dim n As Integer, a() As Integer

3. Private Sub Command1_Click()

4. Dim i As Integer, n As Integer

5. n = InputBox("输入n:", , 3)

6. Dim a(1 To n, 1 To 3)

7. For i = 1 To n

8. a(i, 1) = Int(Rnd * 90) + 10

9. a(i, 2) = nx(a(i, 1))

10. a(i, 3) = gcd(a(i, 1), a(i, 2))

11. Next i

12. End Sub

13. Private Sub Command2_Click()

14. Dim i As Integer, j As Integer

15. Text1 = "运行结果是:" & vbCrLf

16. For i = 1 To n

17. For j = 1 To 3

18. Text1 = Text1 & Right(" " & Str(a(i, j)), 3)

19. Next j

20. Text1 = Text1 & vbCrLf

21. Next i

22. End Sub

23. Function nx(x As Integer) As Integer

24. nx = (x Mod 10) * 10 + x / 10

25. End Function

26. Function gcd(a As Integer, b As Integer) As Integer

27. Dim r As Integer

28. Do

29. r = a Mod b

30. a = b

31. b = r

32. Loop Until r = 0

33. gcd(a,b) = b

34. End Function

相关文档