大學vb考試題庫及答案
A. 求近三年計算機等級考試二級VB的真題
2007年9月全國計算機等級考試二級筆試試卷
Visual Basic語言程序設計
(考試時間90分鍾,滿分100分)
一、選擇題(每小題2分,共70分)
下列各題碼羨好A) 、B) 、C) 、D)四個選項中,只有一個選項是正確的。請將正確選項填塗在答題卡相應位置上,答在試卷上不得分。
(1)軟體是指
A)程序 B)程序和文檔
C)演算法加數據結構 D)程序、數據與相關文檔的完整集合
(2)軟體調試的目的是
A)發現錯誤 B)改正錯誤
C)改善軟體的性能 D)驗證軟體的遲鉛正確性
(3)在面向對象方法中,實現信息隱蔽是依靠
A)對象的繼承 B)對象的多態
C)對象的封裝 D)對象的分類
(4)下列敘述中,不符合良好程序設計風格要求的是
A)程序的效率第一,清晰第二 B)程序的可讀性好
C)程序中要有必要的注釋派指 D)輸入數據前要有提示信息
(5)下列敘述中正確的是
A)程序執行的效率與數據的存儲結構密切相關
B)程序執行的效率只取決於程序的控制結構
C)程序執行的效率只取決於所處理的數據量
D)以上三種說法都不對
(6)下列敘述中正確的是
A)數據的邏輯結構與存儲結構必定是一一對應的
B)由於計算機存儲空間是向量式的存儲結構,因此,數據的存儲結構一定是線性結構
C)程序設計語言中的數組一般是順序存儲結構,因此,利用數組只能處理線性結構
D)以上三種說法都不對
(7)冒泡排序在最壞情況下的比較次數是
A)n(n+1)/2 B)nlog2 n C)n(n-1)/2 D)n/2
(8)一棵二叉樹中共有70個葉子結點與80個度為1的結點,則該二叉樹中的總結點數為
A)219 B)221 C)229 D)231
(9)下列敘述中正確的是
A)資料庫系統是一個獨立的系統,不需要操作系統的支持
B)資料庫技術的根本目標是要解決數據的共享問題
C)資料庫管理系統就是資料庫系統
D)以上三種說法都不對
(10)下列敘述中正確的是
A)為了建立一個關系,首先要構造數據的邏輯關系
B)表示關系的二維表中各元組的每一個分量還可以分成若干數據項
C)一個關系的屬性名表稱為關系模式
D)一個關系可以包括多個二維表
(11)要使一個文本框可以顯示多行文本,應設置為True的屬性是
A)Enabled B)MultiLine C)MasLenfth D)Width
(12)在窗體上有一個名為Text1的文本框。當游標在文本框中時,如果按下字母鍵「A」,則被調用的事件過程是
A)Form_KeyPress() B)Text1_LostFocus()
C)Text1_Click() D)Test1_Change()
(13)設在窗體上有一個名稱為Command1的命令按鈕和一個名稱為Text1的文本框。要求單擊Command1按鈕時可把游標移到文本框中。下面正確的事件過程是
A)Private Sub Command1_Click() B)Private Sub
Text1.GotFocus Command1.GotFocus
End Sub EndSub
C)Private Sub Command1_Click() D)Private Sub
Text1.SetFocus Command1.SetFocus
End Sub End Sub
(14)執行以下程序後輸出的是
Private Sub Command1_Click()
Ch$=」AABCDEFGH」
Print Mid(Righ(ch$,6),Len(left(ch$,4)),2)
End Sub
A)CDEFGH B)ABCD C)FG D)AB
(15)設在窗體Form1上有一個列表框List1,其中有若干個項目。要求單擊列表框中某一項時,把該項顯示在窗體上,正確的事件過程是
A)Prvate Sub List1_Click() B)Private Sub Form1_Click()
Print List1.Text Print List1.Text
End Sub End Sub
C)Private Sub List1_Click() D)Private Sub Form1_Click()
Print Form1.Text List1.Print List1.Text
End Sub End Sub
(16)若窗體上的圖片框中有一個命令按鈕,則此按鈕的Left屬性是指
A)按鈕左端到窗體左端的距離 B)按鈕左端到圖片框左端的距離
C)按鈕中心點到窗體左端的距離 D)按鈕中心點到圖片框左端的距離
(17)為使程序運行時通用對話框CD1上顯示的標題為「對話框窗口」,若通過程序設置該標題,則應使用的語句是
A)CD1.DialogTitle=「對話框窗口」 B)CD1.Action=「對話框窗口」
C)CD1.FileName=「對話框窗口」 D)CD1.Filter=「對話框窗口」
(18)在窗體上有如右圖所示的控制項,各控制項的名稱
與其標題相同,並有如下程序:
Private Sub Form_Load()
Command2.Enabled=False
Check1.value=1
End Sub
剛運行程序時,看到的窗體外觀是:
(19)設在窗體中有一個名稱為List1的列表框,其中有若干個項目(如圖)。要求選中某一項後單擊Command1按鈕,就刪除選中的項,則正確的事件過程是
A)Private Sub Command1_Click()
List1.Clear
End Sub
B) Private Sub Command1_Click()
List1.Clear List1.ListIndex
End Sub
C) Private Sub Command1_Click()
List1.Removeltem List1.ListIndex
End Sub
D) Private Sub Command1_Click()
List1.Removeltem
End Sub
(20)某人設計了如下程序用來計算並輸出7!(7的階乘)
Private Sub Command1_Click()
t=0
For k=7 To 2 Step -1
t=t*k
Next
Print t
End Sub
執行程序時,發現結果是錯誤的,下面的修改方案中能夠得到正確結構的是
A)把t=0改為t=1
B)把For k = 7 To 2 Step -1改為For k =7 To 1 Step -1
C)把For k = 7 To 2 Stip-1改為Fork=1 To 7
D)把Next改為Nexi k
(21)若窗體中已經有若干個不同的單選按鈕,要把它們改為一個單選按鈕數組,在屬性窗口中需要且只需要進行的操作是
A)把所有單選按鈕的Index屬性改為相同值
B)把所有單選按鈕的Index 屬性改為連續的不同值
C)把所有單選按鈕的Caption屬性值改為相同
D)把所有單選按鈕的名稱改為相同,且把它們的Index屬性改為連續的不同值。
(22)窗體上有文本框Text1和一個菜單,菜單標題、名稱如表,結構見圖。要求程序執行時單擊「保存」菜單項,則把其標題顯示在Text1文本框中。下面可實現此功能的事件過程是:
標題 名稱
文件 file
新建 new
保存 save
A)Private Sub save_Click() B)Private Sub save_Click()
Text1.Text=file.save.Caption Text1.Text=save.Caption
End Sub End Sub
C)Private Sub file_Click() D)Private Sub file_Click()
Text1.Text=file.save.Caption Text1.Text=save.Caption
End Sub End Sub
(23)某人在窗體上畫了一個名稱為Timer1的計時器和一個名稱為Lab
的屬性設置為Enabled=True, Interval=0,並編程如下。希望在每2秒在標簽上顯示一次系統當前時間。
Private Sub Timer1_Timer()
Label1.Caption=Time$
End Sub
在程序執行時發現未能實現上述目的,那麼,他應做的修改是
A)通過屬性窗口把計時器的Interval屬性設置為2000
B)通過屬性窗口把計時器的Enabled屬生設置為False
C)把事件過程中的Label1.Caption=Time$語句改為Timer1.Interval=Tims$
D)把事件過程中的Label1.Caption=Time$語句改為Label1.Caption=Timer1.Time
(24)形狀控制項的Shape屬性有6種取值,分別代表6種幾何圖形。下列不屬於這6種幾何圖形的是
(25)下面關於文件的敘述中錯誤的是
A)隨機文件中各條記錄的長度是相同的]
B)打開隨機文件時採用的文件存取方式應該是Random
C)向隨機文件中寫數據應使用語句Print#文件號
D)打開隨機文件與打開順序文件一樣,都使用Open語句
(26)設窗體上有一個圖片框Picture1,要在程序運行期間裝入當前文件夾下的圖形文件File1.jpg,能實現此功能的語句是
A)Picture1.Picture=」Flie1.jpg
B)Picture1.Picture=LoadPicture(「File1.jpg」)
C) LoadPicture(「File1.jpg」)
D)Call LoadPicture(「File1.jpg」)
(27)下面程序執行時,在窗體上顯示的是
Private Sub Command1_Click()
Dim a(10)
For k = 1 To 10
a(k) = 11 – k
Next k
Print a(a(3)\a(7) Mod a(5))
End Sub
A)3 B)5 C)7
(28)為達到把a、b中的值交換後輸出的目的,某人編程如下:
Private Sub Command1_Click()
a% = 10:b% = 20
Call swap(a,b)
Print a,b
End Sub
Private Sub swap(ByVal a As Integer,ByVal b As Integer)
c= a:a=b:b=c
End Sub
在運行時發現輸出結果錯了,需要修改。下面列出的錯誤原因和修改方案中正確的是
A)調用swap過程的語句錯誤,應改為Call swap a,b
B)輸出語句錯誤,應改為:Print 」a」,」b」
C)過程的形式參數有錯,應改為:swap(ByRef a As Integer,ByRef b As Integer)
D)swap中3條賦值語句的順序是錯誤的,應改為a=b:b=c:c=a
(29)有如下函數:
Function fun(a As Integer,n As Integer) As Integer
Dim m As Integer
While a >=n
a=a-n
m= m+1
Wend
fun=m
End Function
該函數的返回值是
A)a乘以n的乘積 B)a加n的和
C)a減n的差 D)a除以n的商(不含小數部分)
(30)下面程序的輸出結果是
Private Sub Command1_Click()
ch$=」ABCDEF」
proc ch
Print ch
End Sub
Private Sub proc(ch As String)
S=」」
For k=Len(ch) To 1 Step-1
s=s&Mid(ch,k,1)
Next k
ch=s
End Sub
A)ABCDEF B)FEDCBA C)A D)F
(31)某人編寫了一個能夠返回數組a中10個數中最大數的函數過程,代碼如下:
Function Maxvalue(a() As Integer) As Integer
Dim max%
max=1
For k = 2 To 10
If a(k)>a(max) Then
max = k
End If
Next k
Maxvalue = max
End Function
程序運行時,發現函數過程的返回值是錯的,需要修改,下面的修改方案中正確的是
A)語句max = 1應改為max = a(1)
B)語句For k = 2 To 10應改為For k = 1 To 10
C)If語句中的條件a(k)>a(max)應改為a(k)>max
D)語句Maxvalue = max 應改為Maxvalue = a(max)
(32)在窗體上畫一個名稱為Command1的命令按鈕,並編寫以下程序:
Private Sub Command1_Click()
Dim n%,b,t
t = 1:b = 1:n = 2
Do
b = b*n
t = t + b
n = n +1
Loop Until n>9
Print t
End Sub
此程序計算並輸出一個表達式的值,該表達式是
A)9! B)10! C)1!+2!+…+9! D)1!+2!+…+10!
(33)有一個名稱為Form1的窗體,上面沒有控制項,設有以下程序(其中方法Pset(X,Y)的功能是在坐標X,Y處畫一個點):
Dim cmdmave As Boolean
Private Sub Form_MouseDown(Button As Integer,Shift As Integer, X As Single,Y As Single)
cmdmave = True
End Sub
Private Sub Form_MouseMove(Button As Integer,Shift As Integer, X As Single, Y As Single)
If cmdmave Then
Form1.Pset(X,Y)
End If
End Sub
Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single,Y As Single)
cmdmave = False
End Sub
此程序的功能是
A)每按下滑鼠鍵一次,在滑鼠所指位置畫一個點
B)按下滑鼠鍵,則在滑鼠所指位置畫一個點;放開滑鼠鍵,則此點消失
C)不按滑鼠鍵而拖動滑鼠,則沿滑鼠拖動的軌跡畫一條線
D)按下滑鼠鍵並拖動滑鼠,則沿滑鼠拖動的軌跡畫一條線,放開滑鼠鍵則結束畫線
(34)某人設計了下面的函數fun,功能是返回參數a中數值的位數
Function fun(a As Integer) As Integer
Dim n%
n = 1
While a \ 10 >= 0
n = n + 1
a = a \ 10
Wend
fun = n
End Function
在調用該函數時發現返回的結果不正確,函數需要修改,下面的修改方案中正確的是
A)把語句n = 1改為n = 0
B)把循環條件a \ 10 >= 0改為a \ 10 > 0
C)把語句 a = a \ 10改為a = a Mod 10
D)把語句fun = n改為 fun = a
(35)在窗體上有一個名稱為Check1的復選框數組
(含4個復選框),還有一個名稱為Text1的文本
框,初始內容為空。程序運行時,單擊任何復選
框,則把所有選中的復選框後面的方字羅列在文
本框中(見圖)。下面能實現此功能的事件過程是
A)Private Sub Check1_Click(Indes As Integer)
Text1.Text =""
For k = 0 To 3
If Check1(k).value = 1 Then
Text1.Text = Text1.Text & Check1(k).Caption & " " '雙引號中是空格
End If
Next k
End Sub
B)Private Sub Check1_Click(Index As Integer)
For k = 0 To 3
If Check1(k).value = 1 Then
Text1.Text = Text1.Text & Check1(k).Caption & " " '雙引號中是空格
End If
Next k
End Sub
C)Private Sub Check1_Click(Index As Integer)
Text1.Text = ""
For k = 0 To 3
If Check1(k).value = 1 Then
Text1.Text = Text1.Text & Check1(Index).Caption & " " '雙引號中是空格
End If
Next k
End Sub
D)Private Sub Check1_Click(Index As Integer)
Text1.Text = ""
For k = 0 To 3
If Check1(k).value = 1 Then
Text1.Text = Text1.Text & Check1(k).Caption & " " '雙引號中是空格
Exit For
End If
Next k
End Sub
二、填空題(每空2分,共30分)
請將每空的正確答案寫在答題卡[1]~[15]序號的橫線上,答在試卷上不得分。
(1)軟體需求規格說明書應具有完整性,無岐義性、正確性、可驗證性、可修改性等特徵,其中最重要的是【1】 。
(2)在兩種基本測試方法中,【2】 測試的原則之一是保證所測模塊中每一個獨立路徑至少執行一次。
(3)線性表的存儲結構主要分為順序存儲結構和鏈式存儲結構。隊列是一種特殊的線性表,循環隊列是隊列的【3】 存儲結構。
(4)對下列二叉樹進行中序遍歷的結果為【4】 。
(5)在E-R圖中,矩形表示【5】 。
(6)窗體上有一個組合框,其中已輸入了
若干個項目。程序運行時,單擊其中一
項,即可把該項與最上面的一項交換。
例如:單擊圖1中的「重慶」,則與「北
京」交換,得到圖2的結果。下面是可
實現此功能的程序,請填空。
Private Sub Combo1_Click()
Dim temp
temp = Combo1.Text
[6] = Combo1.List(0)
Combo1.List(0) = temp
End Sub
(7)設窗體上有一個名稱為HScroIII的水平滾動條,要求當滾動塊移動位置後,能夠在窗體上輸出移動的距離(即新位置與原位置的刻度值之差,向右移動為正數,向左移動為負數)。下面是可實現此功能的程序,請填寫。
Dim [7] As Integer
Private Sub Form_Load()
pos=HScroIII.value
End Sub
Private Sub HScroIII_Change()
Print [8] -pos
pos=HScroIII.value
End Sub
(8)設窗體上有一個名稱為CD1的通用對話框,一個名稱為Text1的文本框和一個名稱為Command1的命令按鈕。程序執行時,單擊Command1按鈕,則顯示打開文件對話框,操作者從中選擇一個文本文件,並單擊對話框上的「打開」按鈕後,則可打開該文本文件,並讀入一行文本,顯示在Text1中。下面是實現此功能的事件過程,請填空。
Private Sub Command1_Click()
CD1.Filter ="文本文件1*.txt(Word 文檔)*.doc"
CD1.Filterinder = 1
CD1.ShowOpen
If CD1.FileName<>""Then
Open [9] For Input As #1
Line Input #1,ch$
Close #1
Text1.Text = [10]
End If
End Sub
(9)下面的程序執行時,可以從鍵盤輸入一個正整數,然後把該數的每位數字按逆序輸出。例如:輸入7685,則輸出5867,輸入1000,則輸出0001。請填空。
Private Sub Command1_Click()
Dim x As Integer
x=InputBox(「請輸入一個正整數」)
While x>__[11]___
Print x Mod 10;
x=x\10
Wend
Print__[12]__
End Sub
(10)有如圖所示的窗體。程序執行時先在Text1文本框中輸入編號,當焦點試圖離開Text1時,程序檢查編號的合法性,若編號合法,則焦點可以離開Text1文本框;否則,顯示相應錯誤信息,並自動選中錯誤的字元,且
焦點不能離開Text1文本框(見圖)。
合法編號的組成是:前2個字元是大寫英文
字母,第3個字元是「-」,後面是數字字元
(至少1個)。下面程序可實現此功能,請
填空。
Private Sub Text1_Lostfocus()
Dim k%,n%
n=Len( [13] )
For k=1 to if (n>3,n,4)
c=Mid(Text1. Text,k,1)
Select Case k
Case 1,2
If c<"A" Or c>"Z" Then
MsgBox("第"&k&"個字元必須是大寫字母!")
SetPosition k
Exit For
End If
Case 3
If c<>"-" Then
MsgBox("第"&k&"個字元必須是字元"'"-"'")
SetPosition k
Exit For
End If
Case Else
If c<"0" Or c>"9" Then
MsgBox("第"&k&"個字元必須是數字!")
SetPosition k
Exit For
End If
End Select
Next k
End Sub
Private Sub SetPosition(pos As Integer)
Text1.SelStart=pos-1
Text.SelLength= [14]
Text1. [15]
End Sub
2007年9月全國計算機等級考試二級VB參考答案
一、選擇題
1-5 DBCAA
6-10 CCABA
11-15 BDCCA
16-20 BAACA
21-25 DBABC
26-30 BDCDB
31-35 DCDBA
二、填空題
1、無歧義性
2、白盒測試
3、順序
4、ACBDFEHGP
5、實體集
6、Combol1.List(Combol1.ListIndex)
7、pos
8、HScroll1.value
9、CD1.FileName
10、ch
11、10
12、x
13、Text1.Text
14、1
15、SetFocus
B. 3月計算機二級VB上機操作題庫及答案
2017年3月計算機二級VB上機操作題庫及答案
一、基本操作題
(1)在名稱為搭肆Forml、標題為“球類項目”且沒有最大化和最小化按鈕的窗體上畫1個名稱為Combol的組合框。組合框中的文本內容為空,表項內容有“乒乓球”、“羽毛球”和“網球”3項。運行後的窗體如圖所示。
注意:存檔時必須存放在考生文件夾下,工程文件名為sjtl.vbp,窗體文件名為sjtl.frm。
(2)在名尺舉稱為Forml、標題為“轉換”的窗體上,畫1個名稱為Shapel、邊框寬度為3的形狀。再畫兩個標題分別為“橢圓”和“圓”的命令按鈕。如下圖所示。
要求:編寫適當的事件過程,使得單擊“橢圓”按鈕時,Shapel的形狀變換為橢圓;單擊“圓”按鈕時,Shapel的形狀變換為圓。程序中不得使用變數,每個事件過程中只能寫一條語句。
注意:存檔時必須存放在考生文件夾下,工程文件名為sjr2.vbp,窗體文件名為sjr2.frm。
二、簡單應用題
(1)在考生文件夾下有一個工程文件sjt3.vbp。窗體Forml上有兩個標題分別是“讀數據”和“查找”的命令按鈕。請畫1個名稱為Textl、初始值為空的文本框,該文本框允許顯示多行內容,且有垂直滾動條,如圖所示。程序功能如下。
①在考生文件夾下的in.3.dat文件中存有100個正整數。單擊“讀數據”按鈕,則將文件in3.dat中的數據讀入數組a中。
②單擊“查找”按鈕,則查找數組a中所有為7的倍數的數據,並將這些數據順次顯示在Textl文本框內(數據之間用空格隔開)。“讀數據”按鈕的Click事件過程已經給出,請編寫程序完成“查找”按鈕的Click事件過程,實現上述功能。
注意:考生不得修改窗體文件中已經存在的控制項和程序,在結束程序運行之前,必須使用“查找”按鈕完成查找過程,且必須用窗體右上角的關閉按鈕結束程序,否則無成績。最後將程序按原文件名存檔。
(2)考生文件夾下有一個工程文件sit4.vbp。在窗體Forml上有兩個名稱為Commandl和Command2、標題分別為“重輸”和“查找”的命令按鈕。程序功能如下。
單擊“重輸”按鈕,則清空Textl中的內容,陵枝碧等待用戶輸入由空格隔開的若干個英文單詞;單擊“查找”按鈕,則找出Textl中最長的單詞,並將其顯示在Text2中。某一次的運行效果如圖所示。請將“查找”按鈕的Click事件過程中的注釋符去掉,把?改為正確內容,以實現上述程序功能。
注意:考生不得修改窗體文件中已經存在的.控制項和程序,最後將程序按原文件名存檔。
三、綜合應用題
考生文件夾下有一個工程文件sjt.s.vbp。在窗體Forml上有兩個標題分別是“產生數據”和“重新排列”的命令按鈕,有兩個標題為“原始數據”和“排列數據”的標簽。程序功能如下。
①單擊“產生數據”按鈕,則隨機產生20個一位整數,存人數組a中,並同時顯示在Textl中。
②單擊“重新排列”按鈕,則重新排列數組a中的元素:使等值的元素相鄰存放,並且保持它們在數組a中首次出現的相對次序;最後將排列結果顯示在Text2中。某一次運行結果如圖所示。
請將“重新排列”按鈕的Click事件過程中的注釋符去掉,把“?”改為正確內容,以實現上述程序功能。
注意:考生不得修改窗體文件中已經存在的控制項和程序,最後程序按原文件名存檔。
【參考答案】
一、基本操作題
(1)【解題思路】新建一個空白窗體,添加一個組合框控制項,根據題目要求修改窗體和控制項的屬性值。
【操作步驟】
步驟1:新建一個空白窗體,設置窗體的屬性,屬性設置如表4.5所示。
步驟2:添加一個組合框控制項,設置控制項的屬性,屬性設置如表4.6所示。
完成設置後界面效果如圖4.3所示。
步驟3:調試並運行程序,關閉程序後按題目要求存檔。
(2)【解題思路】新建一個空白窗體,添加一個形狀控制項和兩個命令按鈕,設置好窗體和控制項的屬性,對兩個命令分別添加事件代碼,使單擊按鈕時,窗體中的形狀控制項能夠產生變化。
【操作步驟】
步驟1:新建一個空白窗體,設置窗體的屬性,屬性設置如表4.7所示。
步驟5:調試並運行程序,單擊“橢圓”按鈕,如圖4.4所示,單擊“圓”按鈕,如圖4.5所示,關閉程序後按題目要求存檔。
二、簡單應用題
(1)【解題思路】本題主要考查利用循環及分支結構處理數組中的數據,使用For循環遍歷數組中的全部值,然後使用If語句判斷數組中每個元素是否是7的倍數,若是,則將數組保存在文本框中。
【操作步驟】
步驟1:打開本題項目工程。
步驟2:在窗體中添加一個文本框控制項,控制項屬性的設置如表4.9所示。
步驟3:打開代碼編輯窗口,在程序代碼區域編寫如下代碼。
所示,單擊“查找”按鈕,如圖4.7所示,關閉程序後按題目要求存檔。
三、綜合應用題
【解題思路】本題利用三重循環對數組中的元素進行移動操作,按照題目的要求移動結束後,將數組元素依次顯示到Text2文本框中。
;
C. 大一vb期末考試試題
單項選擇題 判斷題 填空題 編程題
1) 下列程序運行後,輸出的結果為______。
B=1
Do while (b<40)
b=b*(b+1)
Loop
Print b
a) 42
b) 39
c) 6
d) 1 答案:A
2) 設執行以下程序段時依次輸塵雹入1、3、5,執行結果為_____。
Dim a(4) As Integer
Dim b(4) As Integer
For K =0 To 2
a(K+1) =Val(InputBox(「請輸入數據:"))
b(3-K) =a(K+1)
Next K
Print b(K)
a) 1
b) 3
c) 5
d) 0 答案:A
3) 下列程序執行後,變數s的值為______。
Dim s As long ,x As Integer
s=0:x=1
Do While (x<10)
s=s+x
x=x+2
Loop
Print s
a) 10
b) 25
c) 50
d) 100 答案:B
4) 編寫如下事件過程:
Private Sub Form_MouseDown(Button As Integer ,Shift As Integer,X As Single,Y As Single)
If Shift=6 And Button=2 Then
Print "Hello"
End If
End Sub
程序運行後,為了在窗體上輸出"Hello",應在窗體上執行以下_______操作。
a) 同時按下 Shift 鍵和滑鼠左鍵
b) 同時按下 Shift 鍵和滑鼠段岩右鍵
c) 同時按下Ctrl、Alt 鍵和滑鼠左鍵
d) 同時按下 Ctrl、Alt 鍵和滑鼠右鍵 答案:D
5) 當變數x=2,y=5時,以下程序的輸出結果為____。
Do until y>5
x=x*y
y=y+1
loop
print x
a) 2
b) 5
c) 10
d) 20 答案:C
6) 當執行以下程序時,在名為lblResult的標簽框內將顯示_____。
Private Sub cmdlt_click()
Dim I,R
R=0
For I=1 To 5 Step 1
R=R+I
Next I
lblResult.Caption=Str(R)
End Sub
a) 字元串15
b) 整數15
c) 字元串5
d) 整數5 答案:A
7) 如下有一段不完整的程序段,如果要求該程序執行3次循環,則應在程序中的括弧里輸入______。
X=1
do
x=x+3
print x
loop until(___)
a) x>=8
b) x<=8
c) x>=7
d) x<=7 答案:A
8) 若整型變數a的值為2、b的值為3,則下列程序段執行後整型變數c的值為______。
If a>5 then
if b<4 then
c=a-b
else
c=b-a
End if
elseif b>3 then c=a*b
else
c=a mod b
End if
a) 2
b) -1
c) 1
d) 6 答案:A
9) 設有如下語句:
str1=inputbox("輸入","","練習")
從鍵盤上輸入字元串「示例」後,str1的值是___。
a) 「輸入」
b) 「」
c) 「練習」
d) 「派燃帆示例」 答案:D
10) 我們在一個窗體上建立兩個文本框,名稱分別為Text1和Text2,事件過程如下,
Private Sub Text1_change( )
Text2.text=ucase(Text1.text)
End Sub
則在Text1文本框輸入「visual basic」,Text2將______。
a) Text2中無內容顯示。
b) Text2顯示"VISUAL BASIC"。
c) Text2顯示"visual basic"
d) Text1顯示"visual basic" 答案:B
11) 下列程序的運行後s的值是_____。
S=0
For x=99 to 1 Step-2
s=s+x
Next x
Print s
a) 100
b) 500
c) 2500
d) 5000 答案:C
12) 下列程序的執行結果是____。
K=0
For I=1 To 3
a=I^I^K
print a;
Next I
a) 1 1 1
b) 1 2 3
c) 0 0 0
d) 1 4 9 答案:A
13) 下列程序的執行結果是_____。
Dim a(5) As String
Dim b As Integer
Dim I As Integer
For I =0 To 5
a(I)=I+1
Print a(I)
Next I
a) 123456
b) 6
c) 654321
d) 0 答案:A
14) 下列程序的執行結果為_____。
Dim intsum As Integer
Dim I As Integer
intsum=0
For I=20.2 To 5 Step -4.7
intsum=intsum +I
Next I
Print intsum
a) 150
b) 200
c) 50
d) 0 答案:C
15) 下列程序的執行結果為_____。
Dim S As Integer,n As Integer
S=0:n=1
Do While n<=100
S=S+n
n=n+1
Loop
Print S
a) 5050
b) 2500
c) 3000
d) 4000 答案:A
16) 下列程序的執行結果為_____。
A=100:b=50
If a>b Then
a=a-b
Else
b=b+a
End if
Print a
a) 50
b) 100
c) 200
d) 10 答案:A
17) 下列程序的執行結果為________。
Dim intsum As Integer
Dim I As Integer
intsum=0
For I=0 To 50 Step 10
intsum=intsum+I
Next I
Print intsum
a) 150
b) 200
c) 50
d) 0 答案:A
18) 下面程序執行後,X的結果為_____。
X=0
For I =1 to 5
For j=I to 5
X=X+1
Next j
Next I
Print X
a) 5
b) 10
c) 15
d) 20 答案:C
19) 下面程序執行的結果是____。
Private Sub Form_Click()
A$="123":B$="456"
C=Val(A$)+Val(B$)
Print C\100
End Sub
a) 123
b) 3
c) 5
d) 579 答案:C
20) 下列循環語句將執行______次。
A=100
Do
Print a
a=a+1
Loop until a<=10
a) 1
b) 10
c) 100
d) 死循環 答案:D
21) 下面程序段的循環結構執行後, 的輸出值是_____。
程序段為:
For I=1 to 10 step 2
y=y+I
Next I
print I;
a) 25
b) 10
c) 11
d) 因為Y的初值不知道,所以不確定 答案:C
22) 寫列程序段的執行結果____。
A="abbacddcba"
for I=6 to 2 step -2
x=mid(a,I,I)
y=left(a,I)
z=right(a,I)
z=x & y & z
next I
print Ucase(z)
a) ABA
b) AABAAB
c) BBABBA
d) ABBABA 答案:C
23) 以下語句輸出結果是(在立即窗口中)_____。
A="Beijing"
b="ShangHai"
Print a;b
a) Beijing ShangHai
b) Abeijing ShangHai
c) BeijingShangHai
d) Abeijing 答案:C
24) 有如下程序:
For I=1 To 3
For j=5 To 1 Step-1
Print I+j
Next j,I
其循環執行的次數為______。
a) 12
b) 13
c) 14
d) 15 答案:D
25) 有如下程序段,該程序執行後,變數a的值為______。
For I=1 To 2
For J=I To 2
For K=1 To J
a=a+2
Next K
Next J
Next I
a) 2
b) 8
c) 10
d) 20 答案:C
26) 執行下列程序後,變數a的值為____。
Dim I as integer
dim a as integer
a=0
for I=0 to 100 step 2
a=a+1
next I
a) 1
b) 10
c) 51
d) 100 答案:C
27) 執行下列程序後,X的值為______。
X=3
y=6
Do While y<=6
x=x*y
y=y+1
Loop
a) 3
b) 6
c) 18
d) 20 答案:C
28) 執行下列程序段後,整型變數c的值為___。
A=24
b=328
select case b\10
case 0
c=a*10+b
case 1 to 9
c=a*100+b
case 10 to 99
c=a*1000+b
end select
a) 537
b) 2427
c) 24328
d) 240328 答案:C
29) 執行完下面的程序段後,循環將執行____次。
For I=1.7 To 5.9 Step 0.9
a=a+1
Print a
Next I
a) 3
b) 4
c) 5
d) 6 答案:C
30) 有如下語句,執行後該段語句的循環次數是_____。
Dim s,I,j as integer
For I =1 to 3
For j=3 To 1 Step-1
S=I*j
Next j
Next I
a) 9
b) 10
c) 3
d) 4 答案:A
31) 有如下程序,該程序將______。
For I=1 to 10 step 0
K=k+2
Next I
a) 形成無限循環。
b) 循環體執行一此後結束循環。
c) 語法錯誤。
d) 循環體不執行即結束循環。 答案:A
32) 有如下程序段,該程序段執行完畢後,共循環了________。
For I=1 To 5
For j=1 To I
For k=j To 4
Print "a"
Next k
Next j
Next I
a) 4
b) 5
c) 38
d) 40 答案:D
33) 有如下程序,該程序的運行結果為______。
Dim k As Integer
n=5:m=1:k=1
Do While k<=n
m=m*2
k=k+1
Loop
Print m
a) 1
b) 5
c) 32
d) 40 答案:C
34) 以下程序輸出1到1000之間所有的偶數之和,請補充完該程序。
Private Sub Command_Click()
Dim x As Double
For I=0 To 1000
If ____ Then
x=x+I
End If
Next I
Print x
End Sub
a) i Mod 2 = 0
b) x Mod 2 = 0
c) I Mod 2 <> 0
d) x Mod 2 <> 0 答案:A
35) 以下是計算10的階乘的程序,請補充該程序。
Dim t as single
Dim k as Integer
k=0:t=1
While_______
k=k+1
t=t*k
Wend
Print t
a) k<10
b) k>10
c) k=10
d) k>=10 答案:A
36) _____是由Visual Basic提供的一種專門的子程序,由對象本身所具有,反映該對象功能的內部函數或過程。
a) 文件
b) 屬性
c) 方法
d) 窗體 答案:C
37) 剛建立一個新的標准EXE工程後,不在工具箱中出現的控制項是_____。
a) 單選按鈕
b) 圖片框
c) 通用對話框
d) 文本框 答案:C
38) 下列各項不是Visual Basic的基本數據類型的是_____。
a) Char
b) String
c) Integer
d) Double 答案:A
39) 下列運算結果中,值最大的是 ______。
a) 3\4
b) 3/4
c) 4 mod 3
d) 3 mod 4 答案:D
40) 以下不屬控制項的一項是_____。
a) 文本框
b) 標簽框
c) 列表框
d) 消息框 答案:D
41) 用InputBox函數可幫助生成_______。
a) 消息框
b) 「保存」對話框
c) 簡單輸入框
d) 「顏色」對話框 答案:C
42) ______對象不能響應Click事件。
a) 列表框
b) 圖片框
c) 窗體
d) 計時器 答案:D
43) 17 mod 3的運算結果是_____。
a) 0.5
b) 1
c) 1.5
d) 2 答案:D
44) 變數X=32769,則變數聲明時不能將其聲明為_____。
a) Intrger
b) Variant
c) Long
d) Single 答案:A
45) 表達式2*3^2+2*8/4+3^2的值為_____。
a) 64
b) 31
c) 49
d) 22 答案:B
46) 復選對象是否被選中,是由其_____屬性決定的。
a) Checked
b) Value
c) Enabled
d) Selected 答案:B
47) 沒有Caption屬性的控制項是_____。
a) Label
b) OptionButton
c) Frame
d) LisBox 答案:D
48) 下列符號是Visual Basic中合法變數名的是_____。
a) IF
b) 7AB
c) A[B]7
d) AB_7 答案:D
49) 使窗體自動向下移動的語句是Move_____。
a) Left, Top+100
b) Top+100
c) Top+100
d) Top=Top+100 答案:A
50) RGB函數通過紅、綠、藍三基色混合產生某種顏色,其語法為RGB(紅、綠、藍),括弧中紅、綠、藍三基色的成分使用0-255之間的整數。若使用3個滾動條分別輸入3種基色,為保證輸入數值有效,則應設置_____屬性。
a) Max和Min
b) SmallChange和LargeChange
c) Scroll和Change
d) Value 答案:A
D. 歷年計算機二級vb考試真題
考研歷年真題資料網路網盤免費下載
鏈接: https://pan..com/s/1t0SUkI-X-BW4v7Isl0dk4w
通過不斷研究和學習歷年真題,為考生沖刺階段復習提分指點迷津,做真題,做歷年真題集,對照考綱查缺補漏,提高實戰素養,制定做題策略,規劃方向;

E. vb期末考試試題誰有啊
這有一份
VB期末考試試題 一、 填空題
1、VB程序設計的主要特點是 (1) 和 (2) 。
2、在VB中,最主要的兩種對象是 (3) 和 (4) 。
3、工程是構成應用程序文件的 (5) 。
4、方法是VB提供的一種 (6) ,用來完成一定的操作。
5、浮點類型數據包括單精度型和___(7)__數據。
6、事件是窗體或控制項對象識別的___(8)____。
7、可用窗體的___(9)_ 方法在窗體中顯示文字。
8、 復選框控制項Value屬性指示復選框處於____(10)___或禁止狀態(暗淡的)中的某一種。
9、在VB中,修改窗體的 (11)和 (12) 屬性值,可改變窗體的大小。
10、雙擊工具箱中的控制項圖標,可在窗體的 (13) 出現一個尺寸為預設值的控制項。
11、在MsgBox函數中,如果預設title參數,則使用 (14) 作為消息框的標題。
12、設x=34.58,語句Print Format(x,「000.0」)的輸出結果是 (15) 。
13、在VB 中,數值型變數的初值為 (16) ,Varant型變數的初值為 (17) ,布爾型變數的初值為 (18) 。
14、設置窗體的 (19) 屬性,可在窗體上顯示圖片。
15、程序運行工程中,清除MP圖片框中的圖片應使用語句 (20) 。
二、選擇題
1、菜單控制項只包括一個事件,即 (1) ,當用滑鼠單擊或鍵盤選中後按「回車」鍵時觸發該事件,除分隔條以外的所有菜單控制項都能識別該事件。
A、GotFocus B、Load C、Click D、KeyDown
2、滾動條控制項(如圖所示)的Max屬性所設置的是 (2) 。
A、滾動框處於最右位置時,一個滾動條位置的Value屬性最大設置值
B、 單擊滾動條和滾動箭頭之間的區域時,滾動條中滾動塊的最大移動量
C、單擊滾動條的箭頭區域時,滾動條中滾動塊的最大移動量
D、滾動條控制項無該屬性
3、SQL 語句 Select * Form student 中的 *表示 (3) 。
A、所有記錄 B、所有欄位 C、所有表 D、都不對
4、以下選項中,不屬於標簽的屬性是 (4) 。
A、Enabled B、Caption C、Default D、Font
5、要求改命令按鈕顯示的文本,應當在屬性窗口中改變的屬性是 (5) 。
A、Caption B、Name C、Text D、Label
6、設置一個單選按鈕(OptionButton)所代表選項的選中狀態,應當在屬性窗口中改變的屬性是 (6) 。
A、Caption B、Name C、Text D、Value
7、允許在菜單項的左邊設置打勾標記,下面哪種論述是正確的? (7) 。
A、在標題項中輸入&,然後打勾 B、在索引項中打勾
C、在有效項中打勾 D、在復選項中打勾
8、當執行以下過程時,在窗體上將顯示 (8) 。
Private Sub Command1_Click( )
Print "VB";
Print "Hello! ";
Print "VB"
End Sub
A、 VBHello!VB B、 VB
Hello!VB
C、 VB D、 VB
Hello! VB Hello!
VB
9、語句Print "The answer is:";20/4-2的結果為 (9) 。
A、The answer is 20/4-2 B、The answer is 3
C、The answer is "20/4-2" D、非法語句
10、下列哪個控制項是容器控制項 (10) 。
A、Image B、Picture C、ComboBox D、FileListBox
11、若要將窗體從內存中卸載出去,其實現的方法是 (11) 。
A.Show B.Hide C.Load D.UnLoad
12、以下選項中,不是 Visual Basic控制項的是 (12) 。
A.窗體 B.定時器 C.單選框 D.命令按鈕
13、雙擊窗體中的對象後,Visual Basic將顯示的窗口是 (13) 。
A.代碼窗口 B.工具箱 C.項目(工程)窗口 D.屬性窗口
14、可決定窗體的左上角是否有控制菜單的屬性是 (14) 。
A.ControlBox B.MinButton
C.MaxButton D.BorderStyle
15、設有如下語句:
Strl=InputBox("輸人","","練習")
從鍵盤上輸人字元 「示例」後,Strl的值是 (15) 。
A.「輸入」 B.「 」 C.「練習」 D.「示例」
16、窗體Form1的Name屬性是Frm1,它的單擊事件過程名是 (16) 。
A. Form1_Click B.Form_Click C. Frm1_Click D. Me_Click
17、窗體的hide屬性的含義是 (17) 。
A.隱藏 B.展現 C.裝入 D.卸載
18、若要設置定時器控制項的定時時間,需設置的屬性是 (18) 。
A.Enabled B.Value C.Interval D.Text
19、能夠改變復選框中背景顏色的屬性是 (19) 。
A.Value B.FontColor C.BackColor D.Font
20、窗體能響應的事件是 (20) 。
A.ActiveForm B.Load C.Drive D.Change
三、判斷題(判斷下列正確與否,正確的打√,錯誤的打ⅹ。)
1、三種方式的組合框都允許用戶輸入哪些不在列表框中的選項。
2、圖象框中的Stretch屬性為true時,其作用是圖形自動調整大小以適應圖象控制項。
3、在菜單編輯器中使用「索引」時,可有一組菜單項具有相同的「名字」。
4、通過改變屬性窗口中的Name屬性,來改變窗體的標題。
5、創建VB應用程序的三個主要步驟是:(1)創建應用程序界面(2)設置控制項(3)編寫代碼。
6、變數是指在程序運行過程中其值可以改變的那些量,而值不能改變的是常量。
7、已知P=MsgBox(「Howareyou?",VbYesNo+VbQuestion,「Hello!」),變數P是Integer數據類型。
8、工程文件的擴展名是 .vbg 。
9、VB允許設計和使用用戶自己設計的控制項。
10、OptionButton控制項沒有DblCliek事件。
11、同一條記錄中的各數據具有相同的類型。
12、使用Data控制項可以直接顯示資料庫中的數據。
13、ImageList 是一個圖像容器控制項,可用作工具欄的圖像庫。
14、當用戶單擊工具欄按鈕時,將觸發工具欄按鈕的ButtonClick事件。
15、在VB的工程資源管理器中,如果從工程中移除已經保存過的文件,該文件仍然被物理刪除(真正刪除)。
16、如果列表框的ListConut的屬性為10,則列表框最後一項的ListIndex值為10。
17、要是某個命令按鈕不起作用,應將該按鈕的Enabeld屬性設置為False。
18、使用數組定義語句:Dim D$(10),則數組D中各元素的值為空。
19、如果在一行中輸入多條語句,各語句之間用使用 ;分隔。
20、在代碼窗口中輸入某行代碼並按回車鍵之後,如果代碼變成紅色,說明該行代碼有語法錯誤。
四、讀程序題,寫出程序運行結果
1、 Private Sub Form_Click()
Static SUM As Integer
I = 1
Do While I<=10
SUM = SUM + I
I = I + 1
Loop
Print SUM
End Sub
運行程序,第一次單擊窗體:
第二次單擊窗體:
2、 Private Sub Form_Click()
Print "*"; Tab(6); 2, Tab(15); 5
Print
For I = 15 To 16
Print I;
For j = 2 To 6 Step 3
Print Tab(3 * j); j * I;
Next j
Print
Next I
End Sub
程序運行結果:
五、編程題
(一)窗體中有圖片框(Picture1)和計時器(Timer1)兩個控制項,運行程序時,將圖片載入到圖片框中,然後圖片框以每2秒鍾一次的速度向窗體的右下腳移動,每次向左、向右移動100twip(20分之一像素)。請填空:
Private Sub Form_load( )
(1) =loadPicture(「c:\pic\ball.ico」)
(2) .Interval=200
End Sub
Private Sub Timer1_Timer( )
Static x , y As Integer
x=x+100
y=y+100
Picture1.Move (3)
End Sub
(二)有一個單擊按鈕過程,其作用是產生50個60~100的隨機數,統計其中被6整除餘2的個數,並將這些數輸出。請填空:
Private Sub Command1_Click()
Dim x As Integer, N%
Dim Counter As Integer
(1) Timer
For N=1 To 50
X=Rnd()* (2)
If (3) =2 Then
Print x
Counter= (4)
(5)
Next N
Print Counter
End Sub
《VB程序設計與應用》參考答案
一、填空題 1 2 3 4 5
答案 可視化設計 事件驅動編程 窗體(form) 控制項 集合
題號 6 7 8 9 10
答案 特殊子程序 雙精度 動作 Print 選中
題號 11 12 13 14 15
答案 高度(Height) 寬度(Width) 中央 工程1 34.6
題號 16 17 18 19 20
答案 0 空 False Picture Cls
二、選擇題 1 2 3 4 5
答案 C A B C A
題號 6 7 8 9 10
答案 D D A B B
題號 11 12 13 14 15
答案 D A A A D
題號 16 17 18 19 20
答案 C A C C B
三、判斷題 1 2 3 4 5 6 7 8 9 10
答案 Х Х Х √ Х √ √ √ √ Х
11 12 13 14 15 16 17 18 19 20
答案 √ Х √ √ Х Х √ Х Х √
四、程序閱讀題:
(一) (10分)
1 、 55
2、 110
(二)、 (10分)
* 2 5
15 30 75
16 32 80
五、編程題 (20分)
(一)1、Picture1.Picture
2、 Timer1
3、 x ,y
(二) 1、 Randomize
2、 Rnd()*41+60
3、 x Mod 6
4、 Counter+1
5 End If
一、單項選擇題(共10分)
1.在代碼中引用一個控制項時,應使用控制項的(B)屬性。
A.Caption B.Name C.Text D.Index
2.設變數x = 4,y = -1,a = 7,b = -8,下面表達式(A)的值為「假」。
A.x+a <= b-y B. x > 0 AND y < 0
C.a = b OR x>y D. x+y > a+b AND NOT (y < b)
3.表達式Int(Rnd*71)+10產生的隨機整數范圍是(C )。
A.(10,80) B.(10,81) C.[10,80] D.[10,81]
4.函數Sgn(3.1416)的返回值是(C )。
A.-1 B.0 C.1 D.以上都不對
5.67890屬於( D )類型數據。
A.整型 B.單精度浮點數 C.貨幣型 D.長整型
6.下列變數名中正確的是(D)。
A.3S B.Print C.Select My Name D.Select_1
7.下列賦值語句( A )是有效的。
A.sum = sum -sum B.x+2 = x + 2 C.x + y = sum D.last = y / 0
8.以下的控制項或方法具有輸入和輸出雙重功能的為(B)。
A.Print B.Textbox C.Optionbutton D.Checkbox
9.若要獲得列表框中被選中的列表項的內容,可以通過訪問(D)屬性來實現。
A.Name B.ListIndex C.ListCount D.Text
10.下列代碼的運行結果為(B )。
Private Sub command1_click()
Dim m(10)
For k = 1 To 10
m(k) = 11 - k
Next k
x = 5
Print m(2 + m(x))
End Sub
A.2 B.3 C.4 D.5
二、填空題(10分)
1.寫出整數n能同時被13和17整除的Basic表達n Mod 13=0 And n Mod 17=0式 。
2.代碼窗口中有兩個下拉列表框:左側是(對象)列表框,右側是過程列表框。
3.寫出在字元串 」Visual Basic 6.0」 中截取 」Visual」 的Basic表達式LEFT(「Visual Basic 6.0」,6)。
4.函數Len(「abcdef」)的返回值是(6) 。
5.設a = 2,b = 5,c = -2,d = 100,則a > b >= c AND a < b >= d的值為False 。
三、將下列數學表達式轉換為VB表達式。(6分)
1.a2+2ab+b2 : a^2+2*a*b+b^2
2.8exln10 :8*exp(x)*log(10)
3.2sin(450)cos(450) :2*sin(3.1416/4)*cos(3.1416/4)
6.在VB中,用戶定義常量使用 Const 語句,聲明變數使用 Dim語句。
F. 計算機二級vb考試試題附答案(2)
計算機二級vb考試試題(附答案)
A.目前使用的IP協議主要是IPv4協議,其IP地址長度為32位
B.網際網路是多個網路互聯而成的,不同網路中的主機可以具有相同的IP地址
C.域名是IP地址的文字表述形式,但不是所有的IP地址均有相應的域名
D.一個IP地址可以有多個對應的域名
16.通常所說的TCP/IP協議,是指由100多個協議組成的協議系列(包含下列幾個協議)•
在下列協議中,發送電子郵件主要依賴___(16)___.
A.HTTP協議
B.FTP協議
C.Telnet協議
D.SMTP協議
17.下列有關採用ADSL技術接入網際網路的敘述中,錯誤的是___(17)___
A.計算機中需要安裝(集成)乙太網網卡
B.需要使用專用的ADSL MODEM設備
C.上行與下行傳輸速率相同,傳輸速率可達100Mbps
D.可傳送數據、音頻、視頻等信息
18.下列有關漢字字元集及其編碼的敘述中,錯誤的是顫悶___(18)___ •
A.GB2312是我國頒布的第一個漢字編碼國家標准,該標准包含了6000多個漢字
B.GB2312的所有字元在計算機內都採用2個位元組來表示
C.GBK收錄了包括繁體字在內的20000多個漢字和符號,它向下兼容GB2312
D.GB18030是我國最新頒布的漢字編碼標准,它與GB2312和GBK均不兼容
19.語音在數字化時常用的取樣頻率為8kHz、量化位數為8bits。若聲道數為2,則每分鍾
的數字語音數據量在未壓縮時大約為 ___(19)___
滲洞悄A.64KB
B.128KB
C.1MB
D.2MB
20.數字圖像文件有多種文件類型,不同類叢渣型的文件各有其特點。在下列4種文件類型中,
能夠將多張圖片保存在一個文件中且能產生動畫效果的是___(20)___
A.BMP
B.JPG
C.GIF
D. PNG
第二部分 Visual Basic程序設計
一、選擇題(用答題卡答題,答案依次填在21~30答題號內)
21.VB應用程序設計的一般步驟是___(21)___。
A.分析-->設計-->界面-->編碼-->測試 B.界面-->設計-->編碼-->分析-->文檔
C.分析-->界面-->編碼-->設計-->測試 D.界面-->編碼-->測試-->分析-->文檔
22.若在程序運行時,需要將焦點主動設置到指定的對象上,應調用該對象的___(22)___方法。
A.Move B.SetFocus C.Refresh D.Drag
23.窗體通用聲明部分的"Option Base 1"語句,決定本窗體中數組下標___(23)___。
A.維下界必須為1 B.預設的維下界為1
C.維下界不能為0 D.預設的維下界為0
24.Select Case X結構中(X為Integer類型),如果判斷條件為X=5,正確的Case語句應該是
至___(24)___ 。
A.Case X=5 B.Case Is 5 C.Case 5 D.Case=5
25.表達式3*5^2 Mod 233的值是___(25)___。
A.2 B.5 C.6 D.10
26.數學表達式 對應的VB表達式是___(26)___。
A.a*b/(Sqr(c*d)*e^x*Log(y))
B.a*b/(Sqr(c*d)*Exp(x)*Log(y))
C.a*b/(Sqr(c*d)*Exp(x)*Log(y)/Log(10))
D.a+b/(Sqr(c*d)*e^x*Log(y)/Log(10))
27.以下說法中錯誤的是___(27)___ 。
A.在過程中用Dim、Static聲明的變數都是局部變數
B.執行過程時,給所有局部變數分配內存並進行初始化;過程執行結束,釋放它們所佔的內存
C.局部變數可與模塊級或全局變數同名,且在過程中,其優先順序高於同名的模塊級或全局變數
D.在模塊通用聲明部分,可使用Dim聲明模塊級變數或數組
28.以下有關數組的說法中,錯誤的是___(28)___。
A.定義固定大小數組時,維界定義中不可以包含變數
B.可以使用常數表達式或已經定義過的符號常數說明數組的維界
C.定長字元串類型的數組不可以作為過程的形式參數
D.只能在標准模塊中用Public語句定義一個全局數組
29.下面有關自定義過程的說法中,錯誤的是___(29)___ 。
A.可以用Call語句調用自定義函數,也可以用函數名直接調用自定義函數
B.可以定義沒有形式參數的Sub過程和Function過程
C.調用過程時,可以用常數或表達式作為實在參數與被調過程的按地址傳遞的形參結合
D.主調程序與被調用的函數過程之間,只能依靠函數名把被調過程的處理結果傳遞給主調程序
30.以下關於MsgBox函數的說法中,正確的是___(30)___ 。
A.MsgBox函數有返回值,且返回值類型為數值型
B.MsgBox函數沒有返回值
C.MsgBox函數有返回值,且返回值類型為字元型
D.通過MsgBox函數中的第一個參數,可以設置信息框中的圖標以及按鈕的個數與類型
二、填空題(請將答案填寫在答題紙的相應答題號內,每個答案只佔一行)
1.執行下面程序,單擊命令按鈕Command1,窗體上顯示的第一行內容是___(1)___,第二行內
容是___(2)___,第三行內容是___(3)___
Option Explicit
Private Sub Command1_Click()
Dim a As Integer, b As Integer, i As Integer
a = 1
b = 5
For i = b To a Step -1
a = a + i
b = b + a
If b > 30 Then Exit For
Print a, b
Next i
Print a, b
End Sub
2.執行下面程序,單擊命令按鈕Command1,最終A(2,2)的值是___(4)___,A(3,1)的值是
___(5)___,A(4,2)的值是___(6)___。
G. 高分求大學VB(Visual Basic 6.0)的模擬試題,附答案,非常急,[email protected]
一、選擇題(每題2分,共計70分)
1.數據的存儲結構是指____。
A、存儲在外存中的數據
B、數據所佔的存儲空間
C、數據在計算機中的順序存儲方式
D、數據的邏輯結構在計算機中的表示
2.下列關於棧的描述中錯誤的是:____。
A、棧是先進後出的線性表
B、棧只能順序存儲
C、棧具有記憶作用
D、對棧的插入與刪除操作中,不需要改變棧底指針
3.對於長度為n的線性表,在最壞情況下,下列各排序法所對應的比較次數中正確的是____。
A、冒泡排序為n/2
B、冒泡排序為n
C、快速排序為n
D、快速排序為n(n-1)/2
4.對長度為n的線性表進行順序查找,在最壞情況下所需要的比較次數為____。
A、log2n
B、n/2
C、n
D、n+1
5.下列對於線性鏈表的描述中正確的是____。
A、存儲空間不一定是連續,且各元素的存儲順序是任意的
B、存儲空間不一定是連續,且前件元素一定存儲在後件元素的前面
C、存儲空間必須連續,且前件元素一定存儲在後件元素的前面
D、存儲空間必須連續,且各元素的存儲順序是任意的
6.下列對於軟體測試的描述中正確的是____。
A、軟體測試的目的是證明程序是否正確
B、軟體測試的目的是使程序運行結果正確
C、軟體測試的目的是盡可能多地發現程序中的錯誤
D、軟體測試的目的是使程序符合結構化原則
7.為了使模塊盡可能獨立,要求____。
A、模塊的內聚程度要盡量高,且各模塊間的耦合程度要盡量強
B、模塊的內聚程度要盡量高,且各模塊間的耦合程度要盡量弱
C、模塊的內聚程度要盡量低,且各模塊間的耦合程度要盡量弱
D、模塊的內聚程度要盡量低,且各模塊間的耦合程度要盡量強
8.下列描述中正確的是____。
A、程序就是軟體
B、軟體開發不受計算機系統的限制
C、軟體既是邏輯實體,又是物理實體
D、軟體是程序、數據與相關文檔的集合
9.數據獨立性是數據技術的重要特點之一。所謂數據獨立性是指____。
A、數據與程序獨立存放
B、不同的數據被存放在不同的文件中
C、不同的數據只能被對應的應用程序所使用
D、以上三種說法都不對
10.用樹形結構表示實體之間聯系的模型是____。
A、關系模型
B、網狀模型
C、層次模型
D、以上三個都是
11.在窗體(名稱為Form1)上畫一個名稱為Text1的文本框和一個名稱為Command1的命令按鈕,然後編寫一個事件過程。程序運行後,如果在文本框中輸入一個字元,則把命令按鈕的標題設置為「計算機等級考試」。以下能實現上述操作的事件過程是
A、Private Sub Text1_Change()
Command1.Caption = "計算機等級考試"
End Sub
B、Private Sub Command1_Click()
Caption = "計算機等級考試"
End Sub
C、Private Sub Form_Click()
Text1.Caption = "計算機等級考試"
End Sub
D、Private Sub Command1_Click()
Text1.Text = "計算機等級考試"
End Sub
12.設a=5,b=4,c=3,d=2,下列表達式的值是
3>2*b Or a=c And b<>c Or c>d
A、1
B、True
C、False
D、2
13.設a=」MicrosoftVisualBasic」,則以下使變數的b值為」VisualBasic」的語句是
A、b=Left(a,10)
B、b=Mid(a,10)
C、b=Right(a,10)
D、b=Mid(a,11,10)
14.假定有如下的窗體事件過程:
Private Sub Form_Click()
a$ = "Microsoft VisualBasic"
b$ = Right(a$, 5)
c$ = Mid(a$, 1, 9)
MsgBox a$, 34, b$, c$, 5
End Sub
程序運行後,單擊窗體,則在彈出的信息框的標題欄中顯示的信息是
A、Microsoft Visual
B、Microsoft
C、Basic
D、5
15.設a="a",b="b",c="c",d="d",執行語句x = IIf((a < b) Or (c > d), "A", "B")後,x的值為
A、"a"
B、"b"
C、"B"
D、"A"
16.為了使命令按鈕(名稱為Command1)右移200,應使用的語句是
A、Command1.Move -200
B、Command1.Move 200
C、Command1.Left = Command1.Left + 200
D、Command1.Left = Command1.Left - 200
17.在窗體上畫一個文本框,然後編寫如下事件過程:
Private Sub Form_Click()
x = InputBox("請輸入一個整數")
Print x + Text1.Text
End Sub
程序運行時,在文本框中輸入456,然後單擊窗體,在輸入對話框中輸入123,單擊「確定」按鈕後,在窗體上顯示的內容為
A、123
B、456
C、579
D、123456
18.在窗體上畫一個文本框和一個計時器控制項,名稱分別為Text1和Timer1,在屬性窗口中把計時器的Interval屬性設置為1000,Enabled屬性設置為False。程序運行後,如果單擊命令按鈕,則每隔一秒中在文本框中顯示一次當前的時間。以下是實現上述操作的程序:
Private Sub Command1_Click()
Timer1._______
End Sub
Private Sub Timer1_Timer()
Text1.Text = Time
End Sub
在_____處應填入的內容是
A、Enabled = True
B、Enabled = False
C、Visible = True
D、Visible = False
19.假定在圖片框Picture1中裝入一個圖形,為了清除該圖形(不刪除圖片框),應採用的正確方法是
A、選擇圖片框,然後按Del鍵
B、執行語句 Picture1.Picture = LoadPicture("")
C、執行語句 Picture1.Picture = ""
D、選擇圖片框,在屬性窗口中選擇Picture屬性條,然後按回車鍵
20.在窗體上畫一個名稱為List1的列表框,一個名稱為Label1的標簽,列表框中顯示若干個項目,當單擊列表框中某個項目時,在標簽中顯示被選中項目的名稱。下列能正確實現上述操作的程序是
A、Private Sub List1_Click()
Label1.Caption = List1.ListIndex
End Sub
B、Private Sub List1_Click()
Label1.Name= List1.ListIndex
End Sub
C、Private Sub List1_Click()
Label1.Name = List1.Text
End Sub
D、Private Sub List1_Click()
Label1.Caption = List1.Text
End Sub
21.在窗體上畫一個命令按鈕,其名稱為Command1,然後編寫如下事件過程:
Private Sub Command1_Click()
Dim i As Integer, x As Integer
For i = 1 To 6
If i = 1 Then x = i
If i <= 4 Then
x = x + 1
Else
x = x + 2
End If
Next i
Print x
End Sub
程序運行後,單擊命令按鈕,其輸出結果為
A、9
B、6
C、12
D、15
22.在窗體上畫一個名稱為Command1的命令按鈕,然後編寫如下事件過程,
Private Sub Command1_Click()
c = "ABCD"
For n = 1 To 4
Print ____
Next
End Sub
程序運行後,單擊命令按鈕,要求在窗體上顯示如下內容:
D
CD
BCD
ABCD
則在____處應填入的內容為
A、Left(c,n)
B、Right(c,n)
C、Mid(c,n,1)
D、Mid(c,n,n)
23.執行以下程序段
Dim x As Integer, i As Integer
x = 0
For i = 20 To 1 Step -2
x = x + i \ 5
Next i
後,x的值為
A、16
B、17
C、18
D、19
24.在Visual Basic工程中,可以作為「啟動對象「的程序是
A、任何窗體或標准模塊
B、任何窗體或過程
C、Sub Main過程或其他任何模塊
D、Sub Main 過程或任何窗體
25.假定建立一個名稱為Command1的命令按鈕數組,則以下說法中錯誤的是
A、數組中每個命令按鈕的名稱(Name屬性)均為Command1
B、數組中每個命令按鈕的標題(Caption屬性)都一樣
C、數組中所有命令按鈕可以使用同一個事件過程
D、用名稱Command1(下標)可以訪問數組中的每一個命令按鈕
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 <= 31, "頤和園", "")
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.在窗體上畫一個名稱為Command1的命令按鈕,然後編寫如下通用過程和命令按鈕的事件過程:
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 i
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)
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:\temp\outf.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
A B C D
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 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
Private Sub Command1_Click()
Dim intNum As Integer
intNum=InputBox("")
If SW Then
Print func(intNum)
End If
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.某二叉樹中度為2的結點有18個,則該二叉樹中有____個葉子結點。
輸入答案,中間不含空格:
2.在面向對象方法中,類的實例稱為____。
輸入答案,中間不含空格:
3.診斷和改正程序中錯誤的工作通常稱為____。
輸入答案,中間不含空格:
4.在關系資料庫中,把數據表示成二維表,每一個二維表稱為____。
輸入答案,中間不含空格:
5.問題處理方案的正確而完整的描述稱為____。
輸入答案,中間不含空格:
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"VB Programming"
End Sub
程序運行後,單擊窗體,則在文本框中顯示的內容是____,而在圖片框中顯示的內容是____。
輸入答案,中間不含空格:
8.上一題
輸入答案,中間不含空格:
9.閱讀下面的程序:
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
程序運行後,單擊窗體,輸出結果為____。
輸入答案,中間不含空格:
10.設有如下程序:
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
以上程序的功能是____。程序運行後,單擊窗體,輸出結果為____。
輸入答案,中間不含空格:
11.上一題
輸入答案,中間不含空格:
12.設有如下程序:
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=____
For i=2 To 8
If arr1(i)<Min Then ____
Next i
Print "最小值是:";Min
End Sub
以上程序的功能是:用 Array 函數建立一個含有8個元素的數組,
然後查找並輸出該數組中各元素的最小值。請填空。
輸入答案,中間不含空格:
13.上一題
輸入答案,中間不含空格:
14.在名稱為 Form1 的窗體上畫一個文本框,其名稱為 Text1,在屬性窗口中把該文本框的 MultiLine 屬性設置為 True,然後編寫如下的事件過程:
Private Sub Form_Click()
Open"d:\test\smtext1.txt"For Input As #1
Do While Not ____
Line Input #1,aspect$
whole$=whole$+aspect$+Chr$(13)+Chr&(10)
Loop
Text1.Text=whole$
Chose #1
Open "d:\test\smtext2.txt"For Output As #1
Print #1,____
Close #1
End Sub
上述程序的功能是,把磁碟文件 smtext1.txt 的內容讀到內存並在文本框中顯示出來,
然後把該文本框中的內容存入磁碟文件 smtext2.txt。請填空。
輸入答案,中間不含空格:
15.上一題
輸入答案,中間不含空格:
答案
1 D
2 B
3 D
4 C
5 A
6 C
7 B
8 D
9 D
10 C
11 A
12 B
13 B
14 C
15 D
16 C
17 D
18 A
19 B
20 D
21 A
22 B
23 C
24 D
25 B
26 C
27 D
28 B
29 B
30 A
31 C
32 D
33 D
34 D
35 A
36 19
37 對象
38 程序調試
39 關系
40 演算法
41 12345.68
42 VB程序設計
43 VB Programming
44 10
45 計算1到8的累加 ( 意思相同的語句)
46 36
47 12
48 Min=arr1(i)
49 EOF(1)
50 Text1.text
H. 一些大學VB程序設計及填空題
1.label1.caption=date
2.B=A
3.EOF()
4.123456.79
5.返回值
6.Click
7.Unload form1
8.4.6
9.1次
10.Frame
程序題:
1.max<arr(i)
min>arr(i)
2.2 1 1 0 0
3.7 8
15 16
4.有個地方看不清x(1)=8 ,x(2)=13,x(3)=18,c=6
5.54321
I. 求一些大一的vb期末考試題和答案
我在鄭州上學,這是我們的試卷,中原工學院經管院大一的試題希望對你有用!
一、信乎好單項選擇題(共10分)
1.在代碼中引用一個控制項時,應使用控制項的( )屬性。
A.Caption B.Name C.Text D.Index
2.設變數x = 4,y = -1,a = 7,b = -8,下面表達式( )的值為「假」。
A.x+a <= b-y B. x > 0 AND y < 0
C.a = b OR x>y D. x+y > a+b AND NOT (y < b)
3.表達式Int(Rnd*71)+10產生的隨機整數范圍是( )。
A.(10,80) B.(10,81) C.[10,80] D.[10,81]
4.函數Sgn(3.1416)的返回值是( )。
A.-1 B.0 C.1 D.以上都不對
5.67890屬於( )類型數據。
A.整型 B.單精度浮點數 C.貨幣型 D.長整型
6.下列變數名中正確的是( )。
A.3S B.Print C.Select My Name D.Select_1
7.下列賦頃消值語句( )是有效的。
A.sum = sum -sum B.x+2 = x + 2 C.x + y = sum D.last = y / 0
8.以下的控制項或方法具有輸入和輸出雙重功能的為( )。
A.Print B.Textbox C.Optionbutton D.Checkbox
9.若滑鉛要獲得列表框中被選中的列表項的內容,可以通過訪問( )屬性來實現。
A.Name B.ListIndex C.ListCount D.Text
10.下列代碼的運行結果為( )。
Private Sub command1_click()
Dim m(10)
For k = 1 To 10
m(k) = 11 - k
Next k
x = 5
Print m(2 + m(x))
End Sub
A.2 B.3 C.4 D.5
二、填空題(10分)
1.寫出整數n能同時被13和17整除的Basic表達式 。
2.代碼窗口中有兩個下拉列表框:左側是 列表框,右側是過程列表框。
3.寫出在字元串 」Visual Basic 6.0」 中截取 」Visual」 的Basic表達式 。
4.函數Len(「abcdef」)的返回值是 。
5.設a = 2,b = 5,c = -2,d = 100,則a > b >= c AND a < b >= d的值為 。
6.要使標簽的大小自動與所顯示的文本相適應,可以通過設置 屬性為True來實現。
7.若要在一行書寫多條語句,則各語句間應加分隔符,Visual Basic的語句分隔符為 。
8.要強制顯式聲明變數,使用__________語句完成。
9.在VB中,用戶定義常量使用 語句,聲明變數使用 語句。
三、將下列數學表達式轉換為VB表達式。(6分)
1.a2+2ab+b2 __________________________
2. __________________________
3.8exln10 __________________________
4.2sin(450)cos(450) _______________________________
5. ___________________________________________
6. ___________________________________________
四、判斷題,正確打「√」,錯誤打「×」(10分)
1.在VB中,控制項的事件只能通過用戶的操作觸發。( )
2.字元型數據以雙引號作為定界符,輸出時雙引號本身不會顯示在屏幕上。( )
3.保存工程時,窗體文件和工程文件的文件名不能相同。( )
4.改變控制項的大小,可以使用滑鼠和鍵盤,還可以通過修改代碼。( )
5.同一過程中,數組和簡單變數可以同名。( )
6.VB函數中的參數可以是常量、變數、表達式,還可以是另一個函數。( )
7.代碼Const Number1=15:Number1=10合法。( )
8.允許將塊If-Then語句結構中的所有語句都寫在一行上( )
9.定義數組語句Dim a(b) As Integer 是正確的( )
10.在過程調用中,「實參表」和「形參表」中對應的變數名不必相同,但是變數的個數必須相等,而且實際參數的類型必須與相應形式參數的類型相符。( )
五、根據題意,將下列程序補充完整。(16分)
1. 產生20個[10,100] 之間的隨機整數,每行輸出10個數據。
Private Sub command1_click()
Dim a(1 To 20) As Integer
Randomize
i = 0
Do While i < 20
i = i + 1
a(i) = ( )
If ( )Then
Print a(i);
End If
If i = 10 Then Print a(i)
If i > 10 Then Print a(i);
Loop
End Sub
2.列印九九乘法表
Private Sub command1_click()
For i = 1 To 9
For j = 1 To 9
Print ( )
Next j
Print
( )
End Sub
3.判斷一個數是否素數
Private Sub command1_click()
x = InputBox("請輸入一個整數")
flag = 1
For i = 2 To ( )
If x Mod i = 0 Then
flag = 0
End If
Next i
If ( )Then Print x; "是素數" Else Print x; "不是素數"
End Sub
4.利用數組輸出Fibonacci數列的前15項。
該數列的第1項和第2項為1,其餘各項均為其前兩項之和。
Private Sub Command1_Click()
( )
f(1) = 1 : f(2) = 1
List1.AddItem f(1) : List1.AddItem f(2)
For i = 3 To 15
f(i) = ( )
List1.AddItem f(i)
Next i
End Sub
六、寫出下面程序的輸出結果。(每題3分,共18分)
1. Private Sub command1_click()
x = InputBox("enter x") ' x 的輸入值為-8
Select Case Sgn(x) + 2
Case 1
Print "y="; x ^ 2 + 1
Case 2
Print "y="; x - 4
Case 3
Print "y="; x ^ 3 + 100
End Select
End Sub
2. Private Sub command1_click()
Dim a, b, c, d, e As String
a = "Zheng Zhou"
b = "Zhong Yuan Gong Xue Yuan"
c = a + " " + b
d = Left(a, 1) + Mid(a, 7, 1)
e = Left(b, 1) + Mid(b, 12, 1)
Print c
Print d; e
End Sub
3.設有Sub過程:
Private Sub p1(x As Integer, ByVal y As Integer)
x = 4 :y = 5 :z = 6
End Sub
則如下程序段的運行結果是:
Private Sub Command1_Click()
Dim x As Integer, y As Integer
x = 1: y = 2: z = 3
Print x, y, z
Call p1(x, y)
Print x, y, z
End Sub
4. Private Sub command1_click()
k = 0
For i = 1 To 3
k = k + 1
a = i * i * k
Print a;
Next i
End Sub
5. Private Sub command1_click()
Dim a(5, 5) As Integer
For i = 1 To 5
For j = 1 To 5
a(i, j) = i * 2 + j
Print a(i, j);
Next j
Print
Next i
End Sub
6.設有Function過程:
Private Function f1(b, a)
a = a * a: b = b * b
f1 = a - b
End Function
則如下程序段的運行結果是什麼?
Private Sub command1_click()
a = 4: b = 3
a = f1(a, b)
Print a
End Sub
七.編程題(共30分)
注意:藝術類學生(環藝、裝潢、表演、服設)做第1、2、5、6小題;
其他學生做 第1、2、3、4 小題。
1.給出一個百分制的成績,要求輸出成績的相應等級。(7分)
90分以上為「A」,80~89分為「B」,70~79分為「C」,60~69分為「D」,60分以下為「E」。
2.求n!,n由鍵盤輸入。(7分)
3.產生20個 [0,99] 之間的隨機整數,並按從小到大的順序輸出。(8分)
4.產生並輸出一個6×6的二維數組A:(8分)
(1)兩條對角線上元素的值為1,其餘元素為小於30的隨機整數。
(2)計算各行元素的平均值,輸出平均值最大和平均值最小的行號。
5.輸出1+2+……+100的和,並求出1~100 之間能被17整除的數據的個數(8分)
6.從鍵盤輸入10個數,求出其中的最大數,最小數和平均值。(8分)
VB試題答案及評分標准
一、 單項選擇題(每題1分,共10分)
1.B 2.A 3.C 4.C 5.D
6.D 7.A 8.B 9.D 10.B
二、 填空題(每空1分,共10分)
1.n Mod 13=0 And n Mod 17=0
1、 對象
3.LEFT(「Visual Basic 6.0」,6)
4.6
5.False
6.Autosize
7. : 8.Option Explict 9.Const Dim
三、 將下列數學表達式轉換成VB表達式(每題1分,共6分)
1、 a^2+2*a*b+b^2
2、 x^(1/3)*y^(1/4)
3、 8*exp(x)*log(10)
4、 2*sin(3.1416/4)*cos(3.1416/4)
5、 (x+y+z)/sqr(x^2+y^2+z^2)
6、 log(1+abs((a+b)/(a-b)))
四、 判斷題(每題1分,共10分)
1.× 2.√ 3.× 4.√ 5.×
6.√ 7.× 8.× 9.× 10.√
五、 根據題意,將下列程序補充完整(每空1分,共10分)
1.(1) int(rnd*91)+10 (2) I<10
2.(1) i*j (2) next i
3.(1)int(sqr(x))或者x-1 (2) flag=1
4.(1)dim f(15) as integer (2)f(I-1)+f(I-2)
六、 寫出下面程序的輸出結果(每題4分,共24分)
1、 y=65
2、 Zheng Zhou Zhong Yuan Gong Xue Yuan 2分
ZZZG 2分
3.1 2 3
4 2 3
4.1 8 27
5.3 4 5 6 7
5 6 7 8 9
7 8 9 10 11
9 10 11 12 13
11 12 13 14 15
6.-7
七、 編寫程序
1. private sub command1_click()
dim x as integer,grade as string 1分
x=text1.text 1分
select case x 4分
case 90 to 100
grade=」A」
case 80 to 89
grade=」B」
case 70 to 79
grade=」C」
case 60 to 69
grade=」D」
case is<60
grade=」E」
case else
msgbox 「請重新輸入」
end select
print 「該學生成績為」+grade 1分
end sub
2.Private Sub command1_click()
Dim n as integer,f as long 1分
n=text1.text 1分
f=1
for I=1 to n 3分
f=f*I
next I
text2.text=f 2分
end sub
3. Private Sub Command1_Click()
Dim a(1 To 20) As Integer ' 1分
Randomize
For i = 1 To 20 2分
a(i) = Int(Rnd * 100)
Print a(i);
Next
Print
For i = 1 To 19 3分
For j = i + 1 To 20
If a(i) > a(j) Then
t = a(i): a(i) = a(j): a(j) = t
End If
Next j
Next i
For i = 1 To 20 2分
Print a(i);
Next i
End Sub
4. Private Sub Command1_Click()
Dim a(1 To 6, 1 To 6) As Integer ' 1分
Dim aver As Single
Randomize
For i = 1 To 6 3分
For j = 1 To 6
If i = j Or i + j = 7 Then
a(i, j) = 1
Else
a(i, j) = Int(Rnd * 30)
End If
Print a(i, j);
Next j
Print
Next i
Print
Max = 0: Min = 30 4分
For i = 1 To 6
s = 0
For j = 1 To 6
s = s + a(i, j)
Next j
aver = s / 6
If aver > Max Then Max = aver: row_max = I
If aver < Min Then Min = aver: row_min = i
Next i
Print row_max, row_min
End Sub
5. Private Sub Command1_Click()
Dim i As Integer, c As Integer
Dim s As Integer
For i = 1 To 100 4分
s = s + i
If i Mod 17 = 0 Then c = c + 1
Next i
Print "1+2+...+100="; s 2分
Print "能被17整數的數據有"; c; "個" 2分
End Sub
6. Private Sub Command1_Click()
Dim x As Integer
x = InputBox("x=") 1分
Print x;
Max = x: Min = x: s = x 2分
For i = 2 To 10 3分
x = InputBox("x=") :Print x;
s = s + x
If x > Max Then Max = x
If x < Min Then Min = x
Next i
Print s / 10 1分
Print Max, Min 1分
End Sub
J. 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 要換位置,別給迷惑到了)
祝你能順利通過拉~!
