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