山西農業大學vb考試試卷及答案
A. VB上機題目及答案06年9月
9月25日 13:20 全國計算機等級考試二級筆試試卷
Visual Basic語言程序設計
(考試時間90分鍾,滿分100分)
2004年9月18日
一、選擇題((1)—(20)每小題2分,(21)—(30)每小題3分,共70分)
下列各題 A) 、B)、C)、D)四個選項中,只有一個選項是正確的,請將正確選項塗寫在答題卡相應位置上,答在試卷上不得分。
(1) 設窗體上有一個文本框,名稱為text1,程序運行後,要求該文本框不能接受鍵盤輸入,但能輸出信息,以下屬性設置正確的是:
A)text1.maxlength=0 B)text1.enabled=flase
C)text1.visible=flase D)text1.width=0
答案:B
(2) 以下能在窗體Form1的標題欄中顯示「VisualBasic窗體"的語句是
A) Form1.Name="VisualBasic窗體"
B) Form1.Title="VisualBasic窗體"
C) Form1.Caption="VisualBasic窗體"
D) Form1.Text="VisualBasic窗體」
答案:C
(3) 在窗體上畫一個名稱為Text1的鬧旦枯文本框,然後畫一個名稱為HScroll1的滾動條,其Min和Max屬性分別為0和100。程序運行後,如果移動滾動框遲虧,則在文本框中顯示滾動條的當前值,如圖所示:
以下能實現上述操作的程序段是
A) Private Sub HScroll_Change()
Text1.Text=HScroll1.Value
End Sub
B) Private Sub HScroll_Click()
Text1.Text=HScroll1.Value
End Sub
C) Private Sub HScroll_Change()
Text1.Text=HScroll.Caption
D) Private Sub HScroll_Click()
Text1.Text=HScroll.Caption
End Sub
答案A
(4) 設菜單中有一個菜單項為"Open"。若要為該菜單命令設計訪問鍵,即按下Alt及字母O時,能夠執行"Open"命令,則在菜單編輯器中設置「Open"命令液洞的方式是
A) 把Caption屬性設置為&Open
B) 把Caption屬性設置為O&pen
C) 把Name屬性設置為&Open
D) 把Name屬性設置為O&pen
答案A
(5) 在窗體上畫一個名稱為Command1的命令按鈕,然後編寫如下事件過程:
Private Sub Command1_Click()
x=InputBox("Input")
Select Case x
Case 1,3
Print "分支 1"
Case Is >4
Print "分支 2"
Case Else
Print "Else 分支 "
End Select
End Sub
程序運行後,如果在輸入對話框中輸入2,則窗體上顯示的是
A) 分支1 B) 分支2 C) Else分支 D) 程序出錯
答案C
(6) 以下關於MsgBox的敘述中,錯誤的是
A) MsgBox函數返回一個整數
B) 通過MsgBox函數可以設置信息框中圖標和按鈕的類型
C) MsgBox語句沒有返回值
D) MsgBox函數的第一個參數是一個整數,該參數只能確定對話框中顯示的按鈕數量
答案D
(7)在窗體上畫一個名稱為Timer1的計時器控制項,要求每隔0.5秒發生一次計時器事件,則以下正確的屬性設置語句是
A)Timer1.InterVal=0.5 B) Timer1.Interval=5
C) Timer.Interval=50 D) Timer1.Interval=500
答案D
(8) 在窗體上畫一個名稱為Command1的命令按鈕,然後編寫如下事件過程:
Private Sub Command1_Click()
Static x As Integer
Cls
For i=1 To 2
y=y+x
x=x+2
Next
Print x,y
End Sub
程序運行後,連續三次單擊Command1按鈕後,窗體上顯示的是
A) 4 2 B) 12 18 C) 12 30 D) 4 6
答案:B
(9) 以下關於多重窗體程序的敘述中,錯誤的是
A)用Hide方法不但可以隱藏窗體,而且能清除內存中的窗體
B)在多重窗體程序中,各窗體的菜單是彼此獨立的
C)在多重窗體程序中,可以根據需要指定啟動窗體
D)對於多重窗體程序中,而且單獨保存每個窗體
答案:A
(10)以下關於文件的敘述中,錯誤的是
A)順序文件中的記錄一個接一個地順序存放
B)隨機文件中記錄的長度是隨機的
C)執行打開文件的命令後,自動生成一個文件指針
D)LOF函數返回給文件分配的位元組數
答案B
(11) 以下敘述中錯誤的是
A)事件過程是響應特定事件的一段程序
B)不同的對象可以具有相同名稱的方法
C)對象的方法是執行指定操作的過程
D)對象事件的名稱可以由編程者指定
答案D
(12) 以下合法的Visual Basic標識符是
A) ForLoop B) Const C) 9abc D) a#x
答案A
(13) 當一個復選框被選中時,它的Value屬性的值是
A) 3 B) 2 C) 1 D) 0
答案C
(14) 表達式 5 Mod 3+3\5*2的值是
A) 0 B) 2 C)4 D) 6
答案B
(15) 設x=4,y=8,z=7,以下表達式的值是
x<y And (Not y>z) Or z<x
A) 1 B) -1 C) True D) False
答案D
(16) 在窗體上畫一個名稱為Command1的命令按鈕,然後編寫如下事件過程:
Private Sub Command1_Click()
a$="VisualBasic"
Print String(3,a$)
End Sub
程序運行後,單擊命令按鈕,在窗體上顯示的內容是
A) VVV B) Vis C) sic D) 11
答案A
(17) 設有如下程序段:
x=2
For i=1 To 10 Step 2
x=x+i
Next
運行以上程序後,x的值是
A) 26 B) 27 C) 38 D) 57
答案B
(18) 以下敘述中錯誤的是
A) 在KeyPress事件過程中不能識別鍵盤的按下與釋放
B) 在KeyPress事件過程中不能識別回車鍵
C) 在KeyDown和KeyUp事件過程中,將鍵盤輸入的"A"和"a"視作相同的字母
D) 在KeyDown和KeyUp事件過程中,從大鍵盤上輸入的"1"和從右側小鍵盤上輸入的"1"被視作不同的字元
答案B
(19) 執行如下兩條語句,窗體上顯示的是
a=9.8596
Print Format(a,"$00,00.00")
A) 0,009.86 B) $9.86 C) 9.86 D) $0,009.86
答案D
(20)在窗體上畫一個名稱為CommandDialog1 的通用對話框,一個名稱為Command1的命令按鈕。然後編寫如下事件過程:
Private Sub Command1_Click()
CommonDialog1.FileName =""
CommonDialog1.Filter="All file|*.*|(*.Doc)|*.Doc|(*.Txt)|*.Txt"
CommonDialog1.FilterIndex=2
CommonDialog1.DialogTitle="VBTest"
CommonDialog1.Action=1
End Sub
對於這個程序,以下敘述中錯誤的是
A) 該對話框被設置為「打開」對話框
B) 在該對話框中指定的默認文件名為空
C) 該對話框的標題為VBTest
D) 在該對話框中指定的默認文件類型為文本文件(*.Txt)
答案D
(21) 設一個工程由兩個窗體組成,其名稱分別為Form1和Form2,在Form1上有一個名稱為Command1的命令按鈕。窗體Form1的程序代碼如下:
Private Sub Command1_Click()
Dim a As Integer
a=10
Call g(Form2,a)
End Sub
Private Sub g(f As Form,x As Integer)
y=IIf(x>10,100,-100)
f,Show
f.Caption=y
End Sub
運行以上程序,正確的結果是
A) Form1的Caption屬性值為100 B) Form2的Caption屬性值為-100
C) Form1的Caption屬性值為-100 D) Form2的Caption屬性值為100
答案B
(22)在窗體上畫一個名稱為Command1的命令按鈕,並編寫如下程序:
Private Sub Command1_Click()
Dim x As Integer
Static y As Integer
x=10
y=5
Call f1(x,y)
Print x,y
End Sub
Private Sub f1(ByRef x1 As Integer, y1 As Integer)
x1=x1+2
y1=y1+2
End Sub
程序運行後,單擊命令按鈕,在窗體上顯示的內容是
A) 10 5 B) 12 5 C) 10 7 D) 12 7
答案D
(23)設有如下程序
Option Base 1
Private Sub Command1_Click()
Dim a(10) As Integer
Dim n As Integer
n=InputBox("輸入數據")
If n<10 Then
Call GetArray(a,n)
End If
End Sub
Private Sub GetArray(b() As Integer,n As Integer)
Dim c(10) As Integer
j=0
For i=1 To n
b(i)=CInt(Rnd()*100)
If b(i)/2=b(i)\2 Then
j=j+1
c(j)=b(i)
End If
Next
Print j
End Sub
以下敘述中錯誤的是
A) 數組b中的偶數被保存在數組c中
B) 程序運行結束後,在窗體上顯示的是c數組中元素的個數
C) GetArray過程的參數n是按值傳送的
D) 如果輸入的數據大於10,則窗體上不顯示任何顯示
答案C
(24)在窗體上畫一個名稱為Command1的命令按鈕,然後編寫如下事件過程:
Option Base 1
Private Sub Command1_Click()
Dim a
a= Array(1,2,3,4,5)
For i=1 To UBound(a)
a(i) = a(i)+i-1
Next
Print a(3)
End Sub
程序運行後,單擊命令按鈕,則在窗體上顯示的內容是
A) 4 B) 5 C) 6 D)7
答案B
(25)閱讀程序
Option Base 1
Private Sub Form_Click()
Dim arr,Sum
Sum = 0
arr = Array(1,3,5,7,9,11,13,15,17,19)
For i=1 To 10
If arr(i)/3 = arr(i)\3 Then
Sum =Sum+arr(i)
End If
Next i
Print Sum
End Sub
程序運行後,單擊窗體,輸入結果為
A)13 B)14 C)27 D) 15
答案C
(26)在窗體上畫一個名稱為File1的文件列表框,並編寫如下程序:
Private Sub File1_DblClick()
x=Shell(File1.FileName,1)
End Sub
以下關於該程序的敘述中,錯誤的是
A) x沒有實際作用,因此可以將該語句寫為:Call Shell(File1,FileName,1)
B)雙擊文件列表框中的文件,將觸發該事件過程
C)要執行的文件的名字通過File1.FileName指定
D)File1中顯示的是當前驅動器、當前目錄下的文件
答案A
(27) 在窗體上畫一個名稱為Label1、標題為「VisualBasic考試」的標簽,兩個名稱分別為Command1和Command2、標題分別為「開始」和「停止」的命令按鈕,然後畫一個名稱為Timer1的計時器控制項,並把其Interval屬性設置為500,如圖所示。
編寫如下程序:
Private Sub Form_Load()
Timer1.Enabled=False
End Sub
Private Sub Command1_Click()
Timer1.Enabled=True
End Sub
Private Sub Timer1_Timer()
If Label1.Left<Width Then
Label1.Left = Label1.Left + 20
Else
Label1.Left=0
End If
End Sub
程序運行後,單擊「開始」按鈕,標簽在窗體中移動。
對於這個程序,以下敘述中錯誤的是
A) 標簽的移動方向為自右向左
B)單擊「停止」按鈕後再單擊「開始」按鈕,標簽從停止的位置繼續移動
C) 當標簽全部移出窗體後,將從窗體的另一端出現並重新移動
D)標簽按指定的時間時隔移動
答案A
(28)執行以下程序段
a$="abbacddcba"
For i=6 To 2 Step -2
X=Mid(a,i,i)
Y=Left(a,i)
z=Right(a,i)
z=UCase(X&Y&z)
Next i
Print z
輸出結果為
A)ABA B)BBABBA C)ABBABA D)AABAAB
答案B
(29)在窗體上畫一個名稱為Command1的命令按鈕,然後編寫如下程序:
Option Base 1
Private Sub Command1_Click()
Dim a As Variant
a=Array(1,2,3,4,5)
Sum=0
For i=1 To 5
Sum = sum+a(i)
Next i
x=Sum/5
For i =1 To 5
If a(i)>x Then Print a(i);
Next i
End Sub
程序運行後,單擊命令按鈕,在窗體上顯示的內容是
A)1 2 B) 1 2 3 C) 3 4 5 D) 4 5
答案D
(30)假定一個工程由一個窗體文件Form1和兩個標准模塊文件Model1及Model2組成。
Model1代碼如下:
Public x As Integer
Public y As Integer
Sub S1()
x =1
S2
End Sub
Sub S2()
y=10
Form1.Show
End Show
Model2的代碼如下:
Sub Main()
S1
End Sub
其中Sub Main被設置為啟動過程。程序運行後,各模塊的執行順序是
A) Form1->Model1->Model2
B) Model1->Model2->Form1
C) Model2->Model1->Form1
D) Model2->Form1->Model1
答案C
二、填空題(每空2分,共30分)
請將每空的正確答案寫在答題卡【1】~【15】序號的橫線上,答在試卷上不得分。
(1) 設有如下程序段:
a$="BeijingShanghai"
b$=Mid(a$,InStr(a$,"g")+1)
執行上面的程序段後,變數b$的值為__Shanghai___。
(2) 以下程序段的輸出結果是___3____。
num =0
While num<=2
num = num+1
Wend
Print num
(3) 窗體上有一個名稱為List1的列表框,一個名稱為Text1的文本框,一個名稱為Label1、Caption屬性為「Sum」的標簽,一個名稱為Command1、標題為「計算」的命令按鈕。程序運行後,將把1~100之間能夠被7整除的數添加到列表框。如果單擊「計算」按鈕,則對List1中的數進行累加求和,並在文本框中顯示計算結果,如圖所示。以下是實現上述功能的程序,請填空。
Private Sub Form_Load()
For i=1 To 100
If i Mod 7 =0 Then
__List1.AddItem i____
End If
Next
End Sub
Private Sub Command1_Click()
Sum =0
For i=0 To__List1.ListCount-1___
Sum =Sum+__List1.List(i)_____
Next
Text1.Text=Sum
End Sub
(4) 本程序的功能是利用隨機數函數模擬投幣,方法是:每次隨機產生一個0或1的整數,相當於一次投幣,1代表正面,0代表反面。在窗體上有三個文本框,名稱分別是Text1、Text2、Text3,分別用於顯示用戶輸入投幣總次數、出現正面的次數和出現反面的次數,如圖所示。程序運行後,在文本框Text1中輸入總次數,然後單擊「開始」按鈕,按照輸入的次數模擬投幣,分別統計出現正面、反面的次數,並顯示結果。以下是實現上述功能的程序,請填空。
Private Sub Command1_Click()
Randomize
n=CInt(Text1.Text)
n1=0
n2=0
For i=1 To__n___
r=Int(Rnd*2)
If r=___1____Then
n1=n1+1
Else
n2=n2+1
End If
Next
Text2.Text=n1
Text3.Text=n2
End Sub
(5) 閱讀程序:
Option Base 1
Private Sub Form_Click()
Dim a(3) As Integer
Print "輸入的數據是:";
For i=1 To 3
a(i)=InputBox("輸入數據")
Print a(i);
Next
Print
If a(1)<a(2) Then
t=a(1)
a(1)=a(2)
a(2)=___t____
End If
If a(2)>a(3) Then
m=a(2)
ElseIf a(1)>a(3) Then
m=___a(3)___
Else
m=__a(1)___
End If
Print "中間數是:";m
End Sub
程序運行後,單擊窗體,在輸入對話框中分別輸入三個整數,程序將輸出三個數中的中間數,如圖所示。請填空。
(6) 在窗體上畫一個名稱為「Command1」,標題為「計算」的命令按鈕,再畫7個標簽,其中5個標簽組成名稱為Label1的控制項數組;名稱為Label2的標簽用於顯示計算結果,其Caption屬性的初始值為空;標簽Label3的標題為「計算結果」。運行程序時會自動生成5個隨機數,分別顯示在標簽控制項數組的各個標簽中,如圖所示。單擊「計算」按鈕,則將標簽數組各元素的值累加,然後計算結果顯示在Label2。請填空。
Private Sub Command1_Click()
Sum = 0
For i=0 To 4
Sum=Sum+__Label1(i).caption__
Next
___Label2.caption__=Sum
End Sub
(7) 在窗體上畫兩個名稱分別為Command1和Command2、標題分別為「初始化」和「求和」的命令按鈕。程序運行後,如果單擊「初始化」命令按鈕,則對數組a的各元素賦值;如果單擊「求和」命令按鈕,則求出數組a的各元素之和,並在文本框中顯示出來,如圖所示。請填空。
Option Base 1
Dim a(3,2) As Integer
Private Sub Command1_Click()
For i=1 To 3
For j=1 To 2
__a(i,j)__=i+j
Next j
End Sub
Private Sub Command2_Click()
For j=1 To 3
For i=1 To 2
s=s+__a(j,i)___
Next i
Next j
Text1.Text= __s__
End Sub
評分標准和參考答案
一、選擇題((1)—(20)每小題2分,(21)—(30)每小題2分,共70分)
(1)-(10) BCAAC DDBAB
(11)-(20) DACBD ABBDD
(21)-(30) BDCBC AABDC
二、填空題(每空2分,共30分)
1、(1)"Shanghai"
2、(2)3
3、(3)list1.additem i (4) list1.listcount-1 (5) list1.list(i)
4、(6)n (7) 1
5、(8)t (9) a(3) (10) a(1)
6、(11)label1(i).caption (12) label2.caption
7、(13)a(i,j) (14) a(j,i) (15) s (注意:i,j 要換位置,別給迷惑到了)
祝你能順利通過拉~!
B. 歷年計算機二級vb考試真題
考研歷年真題資料網路網盤免費下載
鏈接: https://pan..com/s/1t0SUkI-X-BW4v7Isl0dk4w
通過不斷研究和學習歷年真題,為考生沖刺階段復習提分指點迷津,做真題,做歷年真題集,對照考綱查缺補漏,提高實戰素養,制定做題策略,規劃方向;

C. 求山西農大考研資料
《山西農大考研資料》網路網盤免費資源下載:
鏈接: https://pan..com/s/1UeuksMYoAQwsyQfu7NefkA
提取碼: xpqe
推薦一個比較不錯的網站,學習口袋網。裡面關於考研類的資料很全,更新速度也非常快,基本上大家想知道的考研資料信息網站裡面都有。在這里真的建議大家多看一些報考學校的資料與專業課視頻,這對大家考研是非常有幫助的。
分享下免費的在線考研資源:網路網盤鏈接:https://pan..com/s/1O17H08bhA9u8MKYt0NuBDA

