- 相關(guān)推薦
2006年上半年全國計算機等級考試二級VB筆試真題
一、選擇題(每小題2分,共70分)下列各題A)、b)、C)、D)四個選項中,只有一個選項是正確的。請將正確選項填涂在答題卡相應(yīng)位置上,答在試卷上不得分。
(1)下列選項中不屬于結(jié)構(gòu)化程序設(shè)計方法的是。
A.自頂向下
b.逐步求精
C.模塊化
D.可復(fù)用
(2)兩個或兩個以上模塊之間關(guān)聯(lián)的緊密程度稱為。
A.耦合度
b.內(nèi)聚度
C.復(fù)雜度
D.數(shù)據(jù)傳輸特性
(3)下列敘述中正確的是。
A.軟件測試應(yīng)該由程序開發(fā)者來完成
B.程序經(jīng)調(diào)試后一般不需要再測試
C.軟件維護只包括對程序代碼的維護
D.以上三種說法都不對
(4)按照“后進先出”原則組織數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)是。
A.隊列
b.棧
C.雙向鏈表
D.二叉樹
(5)下列敘述中正確的是。
A.線性鏈表是線性表的鏈式存儲結(jié)構(gòu)
B.棧與隊列是非線性結(jié)構(gòu)
C.雙向鏈表是非線性結(jié)構(gòu)
D.只有根結(jié)點的二叉樹是線性結(jié)構(gòu)
(6)對如下二叉樹
ABDECF
進行后序遍歷的結(jié)果為。
A.ABCDEF
b.DBEAFC
C.ABDECF
D.DEBFCA
(7)在深度為7的滿二叉樹中,葉子結(jié)點的個數(shù)為。
A.32
b.31
C.64
D.63
(8)“商品”與“顧客”兩個實體集之間的聯(lián)系一般是。
A.一對一
b.一對多
C.多對一
D.多對多
(9)在E-R圖中,用來表示實體的圖形是。
A.矩形
b.橢圓形
C.菱形
D.三角形
(10)數(shù)據(jù)庫DB、數(shù)據(jù)庫系統(tǒng)DBS、數(shù)據(jù)庫管理系統(tǒng)DBMS之間的關(guān)系是。
A.DB包含DBS和DBMS
b.DBMS包含DB和DBS
C.DBS包含DB和DBMS
D.沒有任何關(guān)系
(11)以下關(guān)于Visual Basic特點的敘述中,錯誤的是。
A.Visual Basic是采用事件驅(qū)動編程機制的語言
B.Visual Basic程序既可以編譯運行,也可以解釋運行
C.構(gòu)成Visual Basic程序的多個過程沒有固定的執(zhí)行順序
D.Visual Basic程序不是結(jié)構(gòu)化程序,不具備結(jié)構(gòu)化程序的三種基本結(jié)構(gòu)
(12)以下敘述中,錯誤的是。
A.一個Visual Basic應(yīng)用程序可以含有多個標準模塊文件
B.一個Visual Basic工程可以含有多個窗體文件
C.標準模塊文件可以屬于某個指定的窗體文件
D.標準模塊文件的擴展名是.bas
(13)以下敘述中,錯誤的是。
A.在Visual Basic中,對象所能響應(yīng)的事件是由系統(tǒng)定義的
B.對象的任何屬性既可以通過屬性窗口設(shè)定,也可以通過程序語句設(shè)定
C.Visual Basic中允許不同對象使用相同名稱的方法
D.Visual Basic中的對象具有自己的屬性和方法
(14)設(shè)有如下語句:
Dim a,b As Integer
c="VisualBasic"
d=#7/20/2005#
以下關(guān)于這段代碼的敘述中,錯誤的是。
A.a被定義為Integer類型變量
B.b被定義為Integer類型變量
C.c中的數(shù)據(jù)是字符串
D.d中的數(shù)據(jù)是日期類型
(15)以下能從字符串"VisualBasic"中直接取出子字符串"Basic"的函數(shù)是。
A.Left
b.Mid
C.String
D.Instr
(16)設(shè)a=4,b=3,c=2,d=1,下列表達式的值是。
a>b+1 Or c< Mod b And>
A.True
B.1
C.-1
D.0
(17)以下可以作為Visual Basic變量名的是。
A.A#A
B.counstA
C.3A
D.?AA
(18)設(shè)x=4,y=6,則以下不能在窗體上顯示出“A=10”的語句是。
A.Print A=x+y
b.Print"A=";x+y
C.Print "A="+Str(x+y)
D.Print"A="&x+y
(19)假定有如下的命令按鈕(名稱為Command1)事件過程:
Private Sub Command1_Click()
x=InputBox("輸入:","輸入整數(shù)")
MsgBox"輸入的數(shù)據(jù)是:”,,”輸入數(shù)據(jù):"+x
End Sub
程序運行后,單擊命令按鈕,如果從鍵盤上輸入整數(shù)10,則以下敘述中錯誤的是。
A.x的值是數(shù)值10
B.輸入對話框的標題是“輸入整數(shù)”
C.信息框的標題是“輸入數(shù)據(jù):10”
D.信息框中顯示的是“輸入的數(shù)據(jù)是:”
(20)在窗體上畫1個命令按鈕(名稱為Command1)和1個文本框(名稱為Text1),然
后編寫如下事件過程:
Private Sub Command1_Click()
x=Val(Text1.Text)
Select Case x
Case 1,3
y=x*x
Case Is>=10,Is<=-10
y=x
Case -10 To 10
y=-x
End Select
End Sub
程序運行后,在文本框中輸入3,然后單擊命令按鈕,則以下敘述中正確的是。
A.執(zhí)行y=x*x
b.執(zhí)行y=-x
C.先執(zhí)行y=x*x,再執(zhí)行y=-x
D.程序出錯
(21)設(shè)有命令按鈕Command1的單擊事件過程,代碼如下:
Private Sub Command1_Click()
Dim a(30)As Integer
For i=1 To 30
a(i)=Int(Rnd*100)
Next
For Each arrItem In a
If arrItem Mod 7=0 Then Print arrItem;
If arrItem>90 Then Exit For
Next
End Sub
對于該事件過程,以下敘述中錯誤的是。
A.a數(shù)組中的數(shù)據(jù)是30個100以內(nèi)的整數(shù)
B.語句For Each arrItem In a有語法錯誤
C.If arrItem Mod 7=0……語句的功能是輸出數(shù)組中能夠被7整除的數(shù)
D.If arrItem>90……語句的作用是當數(shù)組元素的值大于90時退出For循環(huán)
(22)設(shè)有命令按鈕Command1的單擊事件過程,代碼如下:
Private Sub Command1_Click()
Dim a(3,3)As Integer
For i=1 To 3
For j=1 To 3
a(i,j)=i*j+i
Next j
Next i
Sum=0
For i=1 To 3
Sum=Sum+a(i,4-i)
Next i
Print Sum
End Sub
運行程序,單擊命令按鈕,輸出結(jié)果是。
A.20
B.7
C.16
D.17
(23)在窗體上畫1個名稱為Command1的命令按鈕,然后編寫如下事件過程:
Private Sub Command1_Click()
a=0
For i=1 To 2
For j=1 To 4
If j Mod 2<>0 Then
a=a-1
End If
a=a+1
Next j
Next i
Print a
End Sub
程序運行后,單擊命令按鈕,輸出結(jié)果是。
A.0
b.2
C.3
D.4
(24)窗體上有名稱分別為Text1、Text2的2個文本框,有一個由3個單選按鈕構(gòu)成的控件數(shù)組Option1,如圖1所示。程序運行后,如果單擊某個單選按鈕,則執(zhí)行Text1中的數(shù)值與該單選按鈕所對應(yīng)的運算(乘以1、10或100),并將結(jié)果顯示在Text2中,如圖2所示。為了實現(xiàn)上述功能,在程序中的問號(?)處應(yīng)填入的內(nèi)容是。
圖1圖2 Private Sub Option1_Click(Index As Integer)
If Text1.Text<>""Then
Select Case ?
Case 0
Text2.Text=Val(Text1.Text)
Case 1
Text2.Text=Val(Text1.Text)*10
Case 2
Text2.Text=Val(Text1.Text)*100
End Select
End If
End Sub
A.Index
b.Option1.Index
C.Option1(Index)
D.Option1(Index).Value
(25)在窗體上畫1個命令按鈕,其名稱為Command1,然后編寫如下程序:
Private Sub Command1_Click()
Dim a(10)As Integer
Dim x As Integer
For i=1 To 10
a(i)=8+i
Next
x=2
Print a(f(x)+x)
End Sub
Function f(x As Integer)
x=x+3
f=x
End Function
程序運行后,單擊命令按鈕,輸出結(jié)果為。
A.12
b.15
C.17
D.18
2006年4月筆試試卷第5頁(共12頁)2006年4月筆試試卷第6頁(共12頁)(26)以下關(guān)于過程的敘述中,錯誤的是。
A.事件過程是由某個事件觸發(fā)而執(zhí)行的過程
B.函數(shù)過程的返回值可以有多個
C.可以在事件過程中調(diào)用通用過程
D.不能在事件過程中定義函數(shù)過程
(27)在窗體上畫3個標簽、3個文本框(名稱分別為Text1、Text2和Text3)和1個命令按鈕(名稱為Command1),外觀如圖所示。
編寫如下程序:
Private Sub Form_Load()
Text1.Text=""
Text2.Text=""
Text3.Text=""
End Sub
Private Sub Command1_Click()
x=Val(Text1.Text)
y=Val(Text2.Text)
Text3.Text=f(x,y)
End Sub
Function f(ByVal x As Integer,ByVal y As Integer)
Do While y<>0
tmp=x Mod y
x=y
y=tmp
Loop
f=x
End Function
運行程序,在Text1文本框中輸入36,在Text2文本框中輸入24,然后單擊命令按鈕,則在Text3文本框中顯示的內(nèi)容是。
A.4
b.6
C.8
D.12
(28)窗體上有名稱分別為Text1、Text2的2個文本框,要求文本框Text1中輸入的數(shù)據(jù)小于500,文本框Text2中輸入的數(shù)據(jù)小于1000,否則重新輸入。為了實現(xiàn)上述功能,在以下程序中問號(?)處應(yīng)填入的內(nèi)容是。
Private Sub Text1_LostFocus()
Call CheckInput(Text1,500)
End Sub
Private Sub Text2_LostFocus()
Call CheckInput(Text2,1000)
End Sub
Sub CheckInput(t As ?,x As Integer)
If Val(t.Text)>x Then
MsgBox"請重新輸入!"
End If
End Sub
A.Text
b.SelText
C.Control
D.Form
(29)在窗體上畫1個文本框,其名稱為Text1,然后編寫如下過程:
Private Sub Text1_KeyDown(KeyCode As Integer,Shift As Integer)
Print Chr(KeyCode)
End Sub
Private Sub Text1_KeyUp(KeyCode As Integer,Shift As Integer)
Print Chr(KeyCode+2)
End Sub
程序運行后,把焦點移到文本框中,此時如果敲擊“A”鍵,則輸出結(jié)果為。
A)A
AB)A
BC)A
CD)A
D
(30)為了使列表框中的項目呈多列顯示,需要設(shè)置的屬性為。
A.Columns
b.Style
C.List
D.MultiSelect
(31)在窗體上畫1個命令按鈕,名稱為Command1,然后編寫如下程序:
Dim Flag As Boolean
Private Sub Command1_Click()
Dim intNum As Integer
intNum=InputBox("請輸入:")
If Flag Then
Print f(intNum)
End If
End Sub
Function f(X As Integer)As Integer
If X<10 Then
Y=X
Else
Y=X+10
End If
f=Y
End Function
Private Sub Form_MouseUp(Button As Integer,Shift As Integer,X As Single,Y As Single)
Flag=True
End Sub
運行程序,首先單擊窗體,然后單擊命令按鈕,在輸入對話框中輸入5,則程序的輸出結(jié)果為。
A.0
b.5
C.15
D.無任何輸出
(32)在菜單編輯器中建立1個名稱為Menu0的菜單項,將其“可見”屬性設(shè)置為False,并建立其若干子菜單,然后編寫如下過程:
Private Sub Form_MouseDown(Button As Integer,Shift As Integer,X As Single,Y As Single)
If Button=1 Then
PopupMenu Menu0
End If
End Sub
則以下敘述中錯誤的是。
A.該過程的作用是彈出一個菜單
B.單擊鼠標右鍵時彈出菜單
C.Menu0是在菜單編輯器中定義的彈出菜單的名稱
D.參數(shù)X、Y指明鼠標當前位置的坐標
(33)窗體上有1個名稱為CD1的通用對話框,1個名稱為Command1的命令按鈕。命令按鈕的單擊事件過程如下:
Private Sub Command1_Click()
CD1.FileName=""
CD1.Filter="All Files|*.*|(*.Do
C.|*.Doc|(*.Txt)|*.txt"
CD1.FilterIndex=2
CD1.Action=1
End Sub
關(guān)于以上代碼,錯誤的敘述是。
A.執(zhí)行以上事件過程,通用對話框被設(shè)置為“打開”文件對話框
B.通用對話框的初始路徑為當前路徑
C.通用對話框的默認文件類型為*.Txt
D.以上代碼不對文件執(zhí)行讀寫操作
(34)以下敘述中錯誤的是。
A.用Shell函數(shù)可以執(zhí)行擴展名為.exe的應(yīng)用程序
B.若用Static定義通用過程,則該過程中的局部變量都被默認為Static類型
C.Static類型的變量可以在標準模塊的聲明部分定義
D.全局變量必須在標準模塊中用Public或Global聲明
(35)以下關(guān)于文件的敘述中,錯誤的是。
A.使用Append方式打開文件時,文件指針被定位于文件尾
B.當以輸入方式(Input)打開文件時,如果文件不存在,則建立一個新文件
C.順序文件各記錄的長度可以不同
D.隨機文件打開后,既可以進行讀操作,也可以進行寫操作
二、填空題(每空2分,共30分)請將每空的正確答案寫在答題卡【1】~【15】序號的橫線上,答在試卷上不得分。
(1)對長度為10的線性表進行冒泡排序,最壞情況下需要比較的次數(shù)為【1】。
(2)在面向?qū)ο蠓椒ㄖ,?】描述的是具有相似屬性與操作的一組對象。
(3)在關(guān)系模型中,把數(shù)據(jù)看成是二維表,每一個二維表稱為一個【3】。
(4)程序測試分為靜態(tài)分析和動態(tài)測試。其中【4】是指不執(zhí)行程序,而只是對程序文本進行檢查,通過閱讀和討論,分析和發(fā)現(xiàn)程序中的錯誤。
(5)數(shù)據(jù)獨立性分為邏輯獨立性與物理獨立性。當數(shù)據(jù)的存儲結(jié)構(gòu)改變時,其邏輯結(jié)構(gòu)可以不變,因此,基于邏輯結(jié)構(gòu)的應(yīng)用程序不必修改,稱為【5】。
(6)下列語句的輸出結(jié)果是【6】。
Print Format(Int(12345.6789*100+0.5)/100,"0000,0.00")
(7)在窗體上畫1個命令按鈕,其名稱為Command1,然后編寫如下事件過程:
Private Sub Command1_Click()
Dim arr(1 To 100)As Integer
For i=1 To 100
arr(i)=Int(Rnd*1000)
Next i
Max=arr(1)
Min=arr(1)
For i=1 To 100
If【7】Then
Max=arr(i)
End If
If【8】Then
Min=arr(i)
End If
Next i
Print"Max=";Max,"Min=";Min
End Sub
程序運行后,單擊命令按鈕,將產(chǎn)生100個1000以內(nèi)的隨機整數(shù),放入數(shù)組arr中,然后查找并輸出這100個數(shù)中的最大值Max和最小值Min,請?zhí)羁铡?/p>
(8)在窗體上畫1個名稱為Command1的命令按鈕和2個名稱分別為Text1、Text2的文本框,如圖所示,然后編寫如下程序:
Function Fun(x As Integer,ByVal y As Integer)As Integer
x=x+y
If x<0 Then
Fun=x
Else
Fun=y
End If
End Function
Private Sub Command1_Click()
Dim a As Integer,b As Integer
a=-10:b=5
Text1.Text=Fun(a,b)
Text2.Text=Fun(a,b)
End Sub
程序運行后,單擊命令按鈕,Text1和Text2文本框顯示的內(nèi)容分別是【9】和【10】。
(9)在窗體上畫1個命令按鈕和1個文本框,其名稱分別為Command1和Text1,然后編
寫如下代碼:
Dim SaveAll As String
Private Sub Command1_Click()
Text1.Text=Left(UCase(SaveAll),4)
End Sub
Private Sub Text1_KeyPress(KeyAscii As Integer)
SaveAll=SaveAll+Chr(KeyAscii)
End Sub
程序運行后,在文本框中輸入abcdefg,單擊命令按鈕,則文本框中顯示的內(nèi)容是【11】。
(10)在窗體上畫1個命令按鈕和1個通用對話框,其名稱分別為Command1和CommonDialog1,然后編寫如下事件過程:
Private Sub Command1_Click()
CommonDialog1.【12】="打開文件"
CommonDialog1.Filter="All Files(*.*)|*.*"
CommonDialog1.InitDir="C:\"
CommonDialog1.ShowOpen
End Sub
該程序的功能是,程序運行后,單擊命令按鈕,將顯示“打開”文件對話框,其標題是“打開文件”,在“文件類型”欄內(nèi)顯示“AIl Files(*.*)”,并顯示C盤根目錄下
的所有文件,請?zhí)羁铡?/p>
(11)在窗體上畫1個文本框,名稱為Text1,然后編寫如下程序:
Private Sub Form_Load()
Open"d:\temp\dat.txt"For Output As#1
Text1.Text=""
End Sub
Private Sub Text1_KeyPress(KeyAscii As Integer)
lf【13】=13 Then
If UCase(Text1.Text)=【14】Then
Close 1
End
Else
Write#1,【15】
Text1.Text=""
End If
End If
End Sub
以上程序的功能是,在D盤temp目錄下建立1個名為dat.txt的文件,在文本框中輸入字符,每次按回車鍵(回車符的ASCII碼是13)都把當前文本框中的內(nèi)容寫入文件dat.txt,并清除文本框中的內(nèi)容;如果輸入“END”,則結(jié)束程序。請?zhí)羁铡?/p>
【上半年全國計算機等級考試二級VB筆試真題】相關(guān)文章:
3月全國計算機等級考試二級VB筆試真題12-05
全國計算機等級考試二級VB筆試真題參考答案(完整版)11-26
全國計算機等級考試二級C++筆試真題10-11
全國計算機二級VB考試真題12-05
計算機等級考試二級ACCESS筆試真題10-06