(28)在窗體上畫一個名稱為Labe11的標(biāo)簽,然后編寫如下事件過程:
Option Base l
Private Sub Form_Click()
Dim a(20)As Integer
For k=l To 20
a(k)=k^2
Next k
Label1.Caption=a(k)
End Sub
程序運(yùn)行后,單擊窗體,在標(biāo)簽中顯示的內(nèi)容是__________。
A)400 B)20 C)441 D)出錯信息
答案:D
評析:一維數(shù)組a的下標(biāo)在1-20之間。而循環(huán)結(jié)束后k值為21,故產(chǎn)生下標(biāo)越界的錯誤。
(29)在窗體上畫一個名稱為Text1的文本框,一個名稱為Command1的命令按鈕,然后編
寫如下事件過程和通用過程:
Private Sub Command1_Click()
n=Val(Text1.Text)
If n\2=n/2 Then
f=f1(n)
Else
f=f2(n)
End If
Print£n
End Sub
Public Function fl(ByRef x)
X=x*x
n=x+x
End FunctiOn
Public Function f2(ByVa1 x)
X=X*X
f2=x+x+x
End FunctiOn
程序運(yùn)行后,單擊命令按鈕,在窗體上顯示的是_______。
A)72 36 B)108 36 C)72 6 D)108 6
答案:A
評析:在本題中,文本框中輸入的是6,也就是n=6,n\2=n/2條件成立,所以執(zhí)行f=fl(n)語句,調(diào)用f1過程,得到x=x*x=6*6=36,fl=36+36=72。由于函數(shù)f1中,參數(shù)是按地址傳遞的,故參數(shù)的值會返回,所以n的值為36。
(30)在窗體上畫一個名稱為command1的命令按鈕,然后編寫如下程序:
Option Base l
Private Sub Command1_Click()
Dim a(3,3)
For i=1 To 3
For j=1 To 3
If i=j Then a(i,j)=l
If i If i>j Then a(i,j)=3
Next j
Next i
For i=1 To 3
For j=1 To 3
Print a(i,j);
Next j
Print
Next i
End Sub
程序運(yùn)行后,如果單擊命令按鈕,則在窗體上輸出的內(nèi)容為_________。
A)l 3 3 B)1 2 2 C)2 3 3 D)2 l l
2 1 3 3 1 2 l 2 3 3 2 l
2 2 l 3 3 l 1 l 2 3 3 2
答案:B
評析:本題程序在過程中定義了一個二維數(shù)組,該數(shù)組可容納9個元素,在循環(huán)中給數(shù)組元素賦值,在每次循環(huán)中有If i=j Then a(i,j)=1,表示主對角線置1;If ij Then a(i,j)=3,表示主對角線一下元素置3。
(31)在窗體上畫一個名稱為Command1的命令按鈕,然后編寫如下程序:
Option Base l
Private Sub Command1_Click()
Dim arr(5)As String
For i=l To 5
arr(i)=Chr(Asc("A")+(i-1))
Next i
For Each b1 In arr
Print b1:
Next
End Sub
程序運(yùn)行后,如果單擊命令按鈕,則在窗體上輸出的內(nèi)容為________。
A)ABCDE B)abcde C)出錯信息 D)1 2 3 4 5
答案:A
評析:語句Chr(Asc("A")+(i-1))的作用是將字符A的ASCII碼值加上循環(huán)變量的值減1,求出此ASCII碼對應(yīng)的字符。將計(jì)算出的字符賦值給數(shù)組arr的第i個元素。循環(huán)結(jié)束后,arr的5個元素分別為字符A、B、C、D、E。Print方法輸出項(xiàng)的最后用分號結(jié)束,使得輸出不換行。
Option Base l
Private Sub Form_Click()
Dim a(20)As Integer
For k=l To 20
a(k)=k^2
Next k
Label1.Caption=a(k)
End Sub
程序運(yùn)行后,單擊窗體,在標(biāo)簽中顯示的內(nèi)容是__________。
A)400 B)20 C)441 D)出錯信息
答案:D
評析:一維數(shù)組a的下標(biāo)在1-20之間。而循環(huán)結(jié)束后k值為21,故產(chǎn)生下標(biāo)越界的錯誤。
(29)在窗體上畫一個名稱為Text1的文本框,一個名稱為Command1的命令按鈕,然后編
寫如下事件過程和通用過程:
Private Sub Command1_Click()
n=Val(Text1.Text)
If n\2=n/2 Then
f=f1(n)
Else
f=f2(n)
End If
Print£n
End Sub
Public Function fl(ByRef x)
X=x*x
n=x+x
End FunctiOn
Public Function f2(ByVa1 x)
X=X*X
f2=x+x+x
End FunctiOn
程序運(yùn)行后,單擊命令按鈕,在窗體上顯示的是_______。
A)72 36 B)108 36 C)72 6 D)108 6
答案:A
評析:在本題中,文本框中輸入的是6,也就是n=6,n\2=n/2條件成立,所以執(zhí)行f=fl(n)語句,調(diào)用f1過程,得到x=x*x=6*6=36,fl=36+36=72。由于函數(shù)f1中,參數(shù)是按地址傳遞的,故參數(shù)的值會返回,所以n的值為36。
(30)在窗體上畫一個名稱為command1的命令按鈕,然后編寫如下程序:
Option Base l
Private Sub Command1_Click()
Dim a(3,3)
For i=1 To 3
For j=1 To 3
If i=j Then a(i,j)=l
If i
Next j
Next i
For i=1 To 3
For j=1 To 3
Print a(i,j);
Next j
Next i
End Sub
程序運(yùn)行后,如果單擊命令按鈕,則在窗體上輸出的內(nèi)容為_________。
A)l 3 3 B)1 2 2 C)2 3 3 D)2 l l
2 1 3 3 1 2 l 2 3 3 2 l
2 2 l 3 3 l 1 l 2 3 3 2
答案:B
評析:本題程序在過程中定義了一個二維數(shù)組,該數(shù)組可容納9個元素,在循環(huán)中給數(shù)組元素賦值,在每次循環(huán)中有If i=j Then a(i,j)=1,表示主對角線置1;If i
(31)在窗體上畫一個名稱為Command1的命令按鈕,然后編寫如下程序:
Option Base l
Private Sub Command1_Click()
Dim arr(5)As String
For i=l To 5
arr(i)=Chr(Asc("A")+(i-1))
Next i
For Each b1 In arr
Print b1:
Next
End Sub
程序運(yùn)行后,如果單擊命令按鈕,則在窗體上輸出的內(nèi)容為________。
A)ABCDE B)abcde C)出錯信息 D)1 2 3 4 5
答案:A
評析:語句Chr(Asc("A")+(i-1))的作用是將字符A的ASCII碼值加上循環(huán)變量的值減1,求出此ASCII碼對應(yīng)的字符。將計(jì)算出的字符賦值給數(shù)組arr的第i個元素。循環(huán)結(jié)束后,arr的5個元素分別為字符A、B、C、D、E。Print方法輸出項(xiàng)的最后用分號結(jié)束,使得輸出不換行。

