(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 <= 30, "颐和园", "")
Text1.Text = t
End Sub
程序运行后,如果从键盘输入16,则在文本框中显示的内容是:
A)旅游景点:长城故宫
B)旅游景点:长城颐和园
C)旅游景点:颐和园
D)旅游景点:故宫
(28)在窗体上画一个名称为Label1的标签,然后编写如下事件过程:
Private Sub Form_Click()
Dim arr(10, 10) As Integer
Dim 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
C)14
D)15
(29) 在窗体上画一个名称为Comamnd1的命令按钮,然后编写如下通用过程和命令按钮的事件过程:
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 i
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
C)10
D)9
(33)在窗体上画一个名称为Command1的命令按钮和一个名称为Text1的文本框,在文本框中输入以下字符串:
Microsoft Visual Basic Programming
然后编写如下事件过程:
Private Sub Command1_Click()
Open "d: empoutf.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(c)
End If
Next i
Close
End Sub
程序运行后,单击命令按狃,文件outf.txt中的内容是:
A)MVBP
B)mvbp
C)M
V
B
P
D)m
v
b
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 Command1_Click()
Dim intNum As Integer
intNum = InputBox("")
If SW Then
Print func(intNum)
End If
End Sub
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
程序运行后,单击命令按钮,将显示一个输入对话框,如果在对话框中输入25,则程序的执行结果是:
A)输出0
B)输出25
C)输出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_Click()
Text1.Text = "VB程序设计"
End Sub
Private Sub Text1_Change()
Picture1.Print "VBProgramming"
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 a 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 i
Print "最小值是:"; Min
End Sub
以上程序的功能是用Array函数建立一个含有8个元素的数组,然后查找并输出该数组中的最小值,请填空
(11)在名称为Form1 的窗体上画一个文本框,其名称为Text1,在属性窗口中把文本框的MultiLine属性设置为True,然后编写如下事件过程:
Private Sub Form_Click()
Open "d: estsmtext1.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: estsmtext2.txt" For Output As #1
Print #1, 【15】
Close #1
End Sub
上述程序的功能是,把磁盘文件smtext1.txt 的内容读到内存并在文本框中显示出来,然后把该文本框中的内容存入磁盘文件smtext2.txt .请填空