End Sub
2. 运行下面的程序,当单击窗体时,窗体上显示的内容第一行是___(3)___,第二行是
__(4)__。
Private Sub Form_Click()
Dim a(3, 3) As Integer, i As Integer, j As Integer For i = 1 To 3 For j = 1 To 3
a(i, j) = (i - 1) * 3 + j * 2 Next j Next i
For i = 1 To 3
For j = i + 1 To 3 Print a(j, i); Next j Print Next i End Sub
3. 运行下面的程序,当单击窗体时,窗体上显示的内容第一行是 (5) ,第三行是 (6) ,Form_Click()事件过程中的第二个For-Next循环共执行了 (7) 次。
Private Sub Form_Click() Dim x(1 To 4) As Integer Dim i As Integer, j As Integer For i = 1 To 4 x(i) = i * i Print x(i); Next i Print
For j = 1 To 4
Call sub1(x(j), j) Print j Next j End Sub
Private Sub sub1(x As Integer, m As Integer) If x - m <= 2 Then m = m + 2 Else
m = m + 3 End If End Sub
4. 运行下面的程序,当单击窗体时,窗体上显示的内容第一行是___(8)____,第二行是
___(9) _,第三行是___(10)___。 Private Sub Form_Click() Print cal(2) End Sub
11
Private Function cal(a As Integer) As Integer Dim temp As Integer If a = 1 Then temp = 2 Else
temp = cal(a - 1) * 2 End If cal = temp Print a, temp End Function
5. 运行下列程序,单击窗体,当在Inputbox输入框中输入值为7时,窗体上显示的内容
是 (1) ,本程序的功能是 (2) 。 Private Sub Form_Click()
Dim S$, n%, a%
n = Val(InputBox(\请输入一个十进制整数:\ S = \
Do While n <> 0
a = n Mod 2 n = n \\ 2
S = Chr(Asc(\ Loop Print S End Sub
6. 运行下列程序,单击窗体,则在窗体上显示的第一行内容是__ (3) _,第二行内
容是__ (4) __,第四行内容是 (5) 。 Private Sub Form_Click()
Dim a(2, 3) As Integer, b(1 To 6) As Integer Dim i As Integer, j As Integer For i = 1 To 2 For j = 1 To 3
a(i, j) = i * 3 + j * 2 + 3 Print a(i, j);
b((i - 1) * 3 + j) = 2 * a(i, j) Next j Print Next i
For i = 1 To UBound(b)
Print Right(\ If i Mod 3 = 0 Then Print Next i End Sub
7. 运行下列程序,当单击Command1时,窗体上显示的第二行内容是 (6) ,第四行
内容是 (7) 。
Private Sub Command1_Click()
12
Print Test(5) End Sub
Private Function Test(t As Integer) As Integer If t >= 1 Then
Test = 2 * Test(t - 2) + 1 Print Chr(Asc(\ End If End Function
8. 运行下列程序,单击窗体后,则在窗体上显示的第一行内容是____(_8_)__,第二行
内容是 __(9)_ ,第四行内容是 (10) 。 Dim m As Integer
Private Sub Form_Click()
Dim x As Integer, y As Integer x = 3: y = 2: m = 2 sub1 y, x Print x, y, m Call sub1(x, y) Print x, y, m End Sub
Private Sub sub1(x As Integer, ByVal y As Integer) Dim m As Integer x = m * 2 + y y = x + 1 m = m + y Print x, y, m End Sub
9. 执行下面的程序,当单击窗体时,第一行显示的是 (1) ,第二行显示的是 (2) ,第三行显示的是 (3) 。 Private Sub Form_Click() Dim A(5, 5) As Integer
Dim I As Integer, J As Integer For I = 2 To 3 For J = 2 To 3
A(I, J) = (I - 1) * 2 + J If I = 3 Then Print A(I, J) Next J Next I
Print A(I, J) End Sub
10. 执行下面的程序,当单击命令按钮Command1时,窗体的第二行显示的是 (4) ,第四
行显示的是 (5) 。(注:小写字母a的ASCII值为97) Private Sub Command1_Click()
Dim s As String, i As Integer, s1 As String
13
i = Asc(\ s1 = \ Do i = i + 1
s = s1 + UCase(Chr(i)) s1 = Mid(s, 2, 1) & Right(s, 2) Print s1 Loop Until i >= 100 Print s End Sub
11. 执行下面的程序,当单击窗体时,在窗体上第一行显示的是 (6) ,第二行显示的是 (7) 。 Dim x As Integer, y As Integer
Private Sub p(m As Integer, ByVal n As Integer) m = m + 2 x = 2 * m n = x Mod 3 Print m, n End Sub
Private Sub Form_Click() x = 2: y = 3 Call p(y, x) Print x, y End Sub
12. 执行下面的程序,单击命令按钮Command1后,窗体的第一行显示的是 (8) ,第二行显示的是 (9) ,第三行显示的是 (10) 。 Private Sub Command1_Click() Dim i As Integer, x As Integer For i = 1 To 3 x = x + m(i) Print x Next i End Sub
Private Function m(ByVal i As Integer) As Integer If i = 1 Then m = 3
ElseIf i >= 2 Then m = m(i - 1) + i End If End Function
三、完善程序
1.下面程序的功能是找出10到1000之间所有平方数是回文数的整数,并以图1所示格式显示在窗体的列表框List1中。所谓回文数是指顺读和倒读数字相同,即指最高位和最低位数字相同,次最高位和次最低位数字相同,依此类推。
14
Private Sub Command1_Click() Dim I As Long, L As Long For I = 10 To 1000 L = I * I If (1) Then
List1.AddItem CStr(I) & \ End If Next I End Sub
Private Function rewind(m As Long) As Boolean Dim n As Integer, I As Integer, a() As Integer n = Len(CStr(m)) rewind = False (2) For I = 1 To n
a(I) = Val(Mid(CStr(m), I, 1)) Next I
For I = 1 To n \\ 2
If a(I) <> a(n - I + 1) Then Exit Function End If Next I (3) End Function
2.文件file1.txt中有十个国家的英文名称(字符串类型),名称间用逗号相隔,从file1.txt中读出这十个国家名称,放到a数组中,采用选择排序法,将国家名称按字典顺序排序,然后把排完序的国家名称写到file2.txt中。 Private Sub Command1_Click() Dim a(1 To 10) As String Dim i%, j%, imin%, t As String Open \ For i = 1 To 10
If EOF(1) Then Exit For (4) Next i For i = 1 To 9 (5) For j = i + 1 To 10 If a(j) < a(imin) Then imin = j End If Next j t = a(i) a(i) = a(imin)
15
图1