壹、選擇題(每小題2分,***70分)
1-5 BCDAA 6-10 DDCBA
11-15 ADDBB 16-20 BCABA
21-25 CDBDC 26-30 ACDAD
31-35 DCCBA
二、填空題(每空2分,***30分)
112345DCBA
2n-1
325
4結構化
5物理設計
6array
7lbound(city) 或 1
8city(i)
9fun
10276
11len
12p(i).gName
13picFile
14CD1.FileName
15Visible
註:以上英文字母不區分大小寫。
壹、選擇題(每小題2分,***70分)
(1)下列敘述中正確的是
B)線性表的鏈式存儲結構所需要的存儲空間壹般要多於順序存儲結構
(2)下列敘述中正確的是
C)在棧中,棧底指針不變,棧中元素隨棧頂指針的變化而動態變化
(3)軟件測試的目的是
D)發現程序中的錯誤
(4)下面敘述中,不屬於軟件危機表現的是
A)軟件過程不規範
(5)軟件生命周期是指
A)軟件產品從提出、實現、使用維護到停止使用退役的過程
(6)面向對象方法中,繼承是指
D)類之間***享屬性和操作的機制
(7)層次型、網狀型和關系型數據庫劃分原則是
D)數據之間的聯系方式
(8)壹個工作人員可以使用多臺計算機,而壹臺計算機可被多個人使用,則實體工作人員與實體計算機之間的聯系是
C)多對多
(9)數據庫設計中反映用戶對數據要求的模式是
B)概念模式
(10)有三個關系R、S和T如下:
R S T
A B C A D A B C D
a 1 2 c 4 c 3 1 4
b 2 1
c 3 1
則由關系R和S得到關系T的操作是
A)自然連接
(11)在Visual Basic集成環境中,要添加壹個窗體,可以單擊工具欄上的壹個按鈕,這個按鈕是
A)
(12)在Visual Basic集成環境的設計模式下,用鼠標雙擊窗體上的某個控件打開的窗口是D)代碼窗口
(13)下列敘述錯誤的是
D)組合框有Text屬性,而列表框沒有
(14)設窗體上有壹個命令按鈕數組,能夠區分數組中各個按鈕的屬性是
B)Index (15)滾動條可以響應的事件是
B)Scroll
(16)設a=5,b=6,c=7,d=8,執行語句x=Iif((a>b) and (c>d),10,20)後,x的值是
B)20
(17)語句Print Sgn(-6^2) Abs(-6^2) Int(-6^2)的輸出結果是
C)-1
(18)在窗體上畫壹個圖片框,再在圖片框中畫壹個命令按鈕,位置如圖所示。則命令按鈕的Top屬性值是
A)200
(19)在窗體上畫壹個名稱為Command1的命令按鈕。單擊命令按鈕時執行如下事件過程:
Private Sub Command1_Click()
a$ = "software and hardware"
b$ = Right(a$, 8)
c$ = Mid(a$, 1, 8)
MsgBox a$, , b$, c$, 1
End Sub
則在彈出的信息框標題中顯示的標題是
B)hardware
(20)在窗體上畫壹個文本框(名稱為Text1)和壹個標簽(名稱為Label1),程序運行後,如果在文本框中輸入文本框,則標簽立即顯示相同的內容。以下可以實現上述操作的事件過程是
A)Private Sub Text1_Change()
Label1.Caption=Text1.Text
End Sub
(21)以下說法中錯誤的是
C)命令按鈕只能識別單擊(Click)事件
(22)以下關於局部變量的敘述中錯誤的是
D)過程執行完畢後,該過程中用Dim或Static語句聲明的變量即被釋放。
(23)以下程序段的輸出結果是
x=1
y=4
Do Until y>4
x=x*y
y=y 1
Loop
Print x
B)4
(24)如果執行壹個語句後彈出如圖所示的窗口,則這個語句是
D)x=InputBox(“請輸入VB數據”,”輸入框”)
(25)有如下事件過程:
Private Sub Form_Click()
Dim n As Integer
x = 0
n = InputBox("請輸入壹個整數")
For i = 1 To n
For j = 1 To i
x = x 1
Next j
Next i
Print x
End Sub
程序運行後,單擊窗體,如果在輸入對話框中輸入5,則在窗體上顯示的內容是
C)15
(26)請閱讀程序:
Sub SubP(b() As Integer)
For i=1 To 4
b(i)=2*i
Next i
End Sub
Private Sub Command1_Click()
Dim a(1 To 4) As Integer
a(1)=5 : a(2)=6 : a(3)=7 : a(4)=8
subP a()
For i=1 To 4 Print a(i) Next i End Sub 運行上面的程序,單擊命令按鈕,則輸出結果是
A)2
4
6
8
(27)Fibonacci數列的規律是:前2個數為1,從第3個數開始,每個數是它前2個數之和,即:1,1,2,3,5,8,13,21,34,55,89,…。某人編寫了下面的函數,判斷大於1的整數x是否是Fibonacci數列的某個數,若使,則返回True,否則返回False。
Function Isfab(x As Integer) As Boolean
Dim a As Integer, b As Integer, c As Integer, flag As Boolean
flag = False
a = 1: b = 1
Do While x < b
c = a b
a = b
b = c
If x = b Then flag = True
Loop
Isfab = False
End Function
測試時發現對於所有正整數x,函數都返回False,程序需要修改。下面的修改方案中正確的是
C)把Do While x<b 改為 Do While x>b
(28)在窗體上畫壹個命令按鈕,其名稱為Command1,然後編寫如下事件過程:
Private Sub Command1_Click()
Dim a$, b$, c$, k%
a = "ABCD"
b = "123456"
c = ""
k = 1
Do While k <= Len(a) Or k <= Len(b)
If k <= Len(a) Then
c = c & Mid(a, k, 1)
End If
If k <= Len(b) Then
c = c & Mid(b, k, 1)
End If
k = k 1
Loop
Print c
End Sub
運行程序,單擊命令按鈕,輸出結果是
D)A1B2C3D456
(29)請閱讀程序:
Private Sub Command1_Click()
m = 1
For i = 4 To 1 Step -1
Print Str(m);
m = m 1
For j = 1 To i
Print "*";
Next j
Next i
End Sub
程序運行後,單擊窗體,則輸出結果是
A)1****
2***
3**
4*
(30)在窗體上畫壹個命令按鈕(其名稱為Command1),然後編寫如下代碼:
Private Sub Command1_Click()
Dim a
a = Array(1, 2, 3, 4) i = 3: j = 1 Do While i >= 0 s = s a(i) * j i = i - 1 j = j * 10 Loop Print s End Sub 運行上面的程序,單擊命令按鈕,則輸出結果是
D)1234
(31)下列可以打開隨機文件的語句是
D)Open “file1.dat” For Random As #1 Len=20
(32)有彈出式菜單的結構如右表,程序運行時,單擊窗體則彈出如下圖所示的菜單。下面的事件過程中能正確實現這壹個功能的是
C)Private Sub Form_Click()
PopupMenu edit
End Sub
(33)請閱讀程序:
Option Base 1
Private Sub Form_Click()
Dim Arr(4, 4) As Integer
For i = 1 To 4
For j = 1 To 4
Arr(i, j) = (i - 1) * 2 j
Next j
Next i
For i = 3 To 4
For j = 3 To 4
Print Arr(j, i);
Next j
Next i
End Sub
程序運行後,單擊窗體,則輸出結果是
C)7 9
8 10
(34)下面函數的功能是:刪除字符串str中所有與變量ch相同的字符,並返回刪除後的結果。例如:若str=”ABCDABCD”,ch=”B”,則函數的返回值為:“ACDACD”。
Function delchar(str As String, ch As String) As String
Dim k As Integer, temp As String, ret As String
ret = ""
For k = 1 To Len(str)
temp = Mid(str, k, 1)
If temp = ch Then
ret = ret & temp
End If
Next k
delchar = ret
End Function
但實際上函數有錯誤,需要修改。下面的修改方案中正確的是
B)把If temp=ch Then 改為 If temp <> ch Then
(35)在窗體上畫壹個命令按鈕和兩個文本框,其名稱分別為Command1、Text1和Text2,在屬性窗口中把窗體的KeyPreview屬性設置為True,然後編寫如下程序:
Dim S1 As String, S2 As String
Private Sub Form_Load()
Text1.Text = ""
Text2.Text = ""
Text1.Enabled = False
Text2.Enabled = False
End Sub
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
S2 = S2 & Chr(KeyCode)
End Sub
Private Sub Form_KeyPress(KeyAscii As Integer)
S1 = S1 & Chr(KeyAscii)
End Sub
Private Sub Command1_Click()
Text1.Text = S1 Text2.Text = S2 S1 = "" S2 = "" End Sub 程序運行後,先後按“a”、“b”、“c”鍵,然後單擊命令按鈕,在文本框Text1和Text2中顯示的內容分別為:
A)abc和ABC
二、填空題(每空2分,***30分)
(1)壹個棧的初始狀態為空。首先將元素5、4、3、2、1依次入棧,然後退棧壹次,再將元素A,B,C,D依次入棧,之後將所有元素全部退棧,則所有元素退棧(包括中間退棧的元素)的順序為112345DCBA。
(2)在長度為n的線性表中,尋找最大項至少需要比較2n-1次。
(3)壹棵二叉樹有10個度為1的結點,7個度為2的結點,則該二叉樹***有325個結點。
(4)僅有順序、選擇(分支)和重復(循環)結構構成的程序是4結構化 程序。
(5)數據庫設計的四個階段:需求分析、概念設計、邏輯設計和5物理設計。
(6)窗體上有壹個名稱為Combo1的組合框,其初始內容為空,有壹個名稱為Command1、標題為“添加項目”的命令按鈕。程序運行後,如果單擊命令按鈕,會將給定數組中的項目添加到組合框中,如圖所示。請填空。
Option Base 1
Private Sub Command1_Click()
Dim city As Variant
city =6 Array("北京", "天津", "上海", "武漢", "重慶", "西寧")
For i = 7LBound(city) 或1 To UBound(city)
Combo1. AddItem 8city(i)
Next
End Sub
(7)窗體上有壹個名稱為Text1的文本框和壹個名稱為Command1、標題為“計算”的命令按鈕,如圖所示。函數fun及命令按鈕的單擊事件過程如下,請填空。
Private Sub Command1_Click()
Dim x As Integer
x = Val(InputBox("輸入數據"))
Text1 = str(fun(x) fun(x) fun(x))
End Sub
Private Function fun(ByRef n As Integer)
If n Mod 3 = 0 Then
n = n n
Else
n = n * n
End If
9fun = n
End Function
當單擊命令按鈕,在輸入對話框中輸入2時,文本框中顯示的是10276。
(8)窗體上有壹個名稱為List1的列表框,壹個名稱為Picture1的圖片框。Form_Load事件過程的作用是,把Data1.txt文件中物品名稱添加到列表框中。運行程序,當雙擊列表框中的物品名稱時,可以把該商品對應的圖片顯示在圖片框中,如圖所示。以下是類型定義及程序,請填空。
Private Type Pic
gName As String * 10 '物品名稱
picFile As String * 20 '物品圖片的圖片文件名
End Type
Dim p(4) As Pic, pRec As Pic
Private Sub Form_Load()
Open "Data1.txt" For Random As #1 11Len = Len(pRec)
For i = 0 To 4
Get #1, i 1, p(i)
List1.AddItem p(i).gName
Next i
Close #1
End Sub
Private Sub List1_DblClick()
For i = 0 To 4
If RTrim(List1.List(i)) = RTrim(12p(i).gName) Then
Picture1.Picture = LoadPicture(p(i).13picFile)
Exit For
End If
Next
End Sub
(9)窗體上有壹個名稱為CD1的通用對話框。通過菜單編輯器建立如圖1所示的菜單。程序運行時,如果單擊“打開”菜單項,則執行打開文件的操作,當選定了文件(例如:G:\VB\2010-9\in.txt)並打開後,該文件的文件名會被添加到菜單中,如圖2所示。各菜單項的名稱和標題等定義如下表。
以下是單擊“打開”菜單項的事件過程,請填空。
Dim mnuCounter As Integer
Private Sub mnuOpen_Click() CD1.ShowOpen If CD1.FileName <> "" Then Open 14CD1.FileName For Input As #1 mnuCounter = mnuCounter 1 Load FName(mnuCounter) FName(mnuCounter).Caption = CD1.FileName FName(mnuCounter).15Visible = True End If End Sub