當前位置:才華齋>計算機>計算機二級>

全國計算機等級考試二級visualBasic筆試試卷

計算機二級 閱讀(5.82K)

為了使廣大考生在備戰計算機等級考試時,更快的掌握相應知識點,下面是小編搜尋整理的全國計算機等級考試二級visualBasic筆試試卷,供參考練習,預祝考生們考出自己理想的成績!

全國計算機等級考試二級visualBasic筆試試卷

一、選擇題((1)一(20)每小題2分,(21)一(30)每小題3分,共30題,70分)

下列各題A)、B)、C)、D)四個選項中,只有一個選項是正確的,請將正確選項塗

在答題卡的相應位置上,答在試卷上不得分。

(1)以下不能在“工程資源管理器”視窗中列出的檔案型別是

A).bas B).res C).fnn D).ocx

(2)以下關於窗體的描述中,錯誤的是

A)執行UnloadFoMl語句後,窗體Fonnl消失,但仍在記憶體中

B)窗體的Ioad事件在載入窗體時發生

C)當窗體的Enabled屬性為False時,通過滑鼠和鍵盤對窗體的操作都被禁止

D)窗體的Height、width屬性用於設定窗體的高和寬

(3)下列可作為V2sualBasic變數名的是

A)A#A B)4A C)?xY D)constA

(4)設有如下的記錄型別

Type Student

numberAs string

name As String

age As Integer

End Type

則正確引用該記錄型別變數的程式碼是

A) Student.name=”張紅” B) Dim As Student

s.name=”張紅”

C) Dim s As Type Student D) Dim s As Type

S.name=”張紅” =”張紅”

(5)函式String(n,“str”)的功能是

A)把數值型資料轉換為字串

B)返回由n個字元組成的字串

C)從字串中取出n個字元

D)從字串中第n個字元的位置開始取子字串

(6)將數學表示式Cos2(a+b)+5e2寫成Visual Basic的表示式,其正確的形式是

A)Cos(a+b)A2十5。exp(2) B)Cos^2(a+b)+5*exp(2)

C)Cos(a+b)^2十5*ln(2) D)Cos^2(a+b)+5*ln(2)

(7)在窗體上畫一個命令按鈕,名稱為Commandl。單擊命令按鈕時,執行如下事件過

程:

PrlVate Sub Commandl—C1icko

a$="software and hardware"

b$=Right(a$,8)

c$=Mid(a$,1,8)

Msgbox a$,,b$,c$,1

End Sub

則在彈出的資訊框的標題欄中顯示的資訊是

A)softWare and hardware B)software C)hardwafe D)1

(8)執行如下語句:

a=inutBox(”Today”,”TomorroW,”Yesterday”,,,"Day before yesterday",5)

將顯示一個輸入對話方塊,在對話方塊的輸入區中顯示的資訊是

A)Today B)Tomorrow C)Yesterday D)Day before yesterday

(9)表示滾動條控制元件取值範圍最大值的屬性是

A)Max B)LargeChange C)Value D)Max—Min

(10)在窗體上畫一個名稱為Listl的列表框,一個名稱為Labell的標籤。列表框中顯示

若干城市的名稱。當單擊列表框中的某個城市名時,在標籤中顯示選中城市的名稱。

下列能正確實現上述功能的程式是

A) Private Sub listl_Click() B)Private Sub Listl_C1ick()

Labell.Caption=lndex Labell.Nanle=Listl.listindex

End Sub .End Sub

程式執行後,如果單擊命令按鈕,則在窗體上顯示的內容是

A)空白 B)錯誤提示 C)北京 D)上海

(15)假定有以下函式過程:

Function Fun(S As String) As String

Dim s1 As String

For i=1 To Len(S)

s1=UCase(Mid(S,i,1))十s1

Next i

Fun=s1

End Function

在窗體上畫一個命令按鈕,然後編寫如下事件過程:

Prlvate Sub Commmldl_Click()

Dim Str1 As String,Str2 As String

Strl=inputbox(”請輸入一個字串”)

Str2=Fun(Strl)

Print Str2

End Sub

程式執行後,單擊命令按鈕,如果在輸入對話方塊中輸入字串“abcdefg”,則單擊“確

定”按鈕後在窗體上的輸出結果為

A)abcdefg B)ABCDEFG C)gfedcba D)GFEDCBA

(16)設有語句

open "c:Test.Dat" For OutPut As#1

則以下錯誤的敘述是

A)該語句開啟C盤根目錄下一個己存在的檔案Test.Dat

B)該語句在C盤根目錄下建立一個名為Test.Dat的檔案

C)該語句建立的檔案的檔案號為1

D)執行該語句後,就可以通過Print#語句向檔案Test.Dat中寫入資訊

(17)以下敘述中錯誤的是

A)用Shell函式可以呼叫能夠在Windows下執行的應用程式

B)用Shell函式可以呼叫可執行檔案,也可以呼叫VisualBasic的內部函式

C)呼叫Shell函式的格式應為:<變數名>=Shell(……)

D)用Shell函式不能執行DoS命令

(18)以下關於過程及過程引數的描述中,錯誤的是

A)過程的引數可以是控制元件名稱

B)用陣列作為過程的引數時,使用的是“傳地址”方式

c)只有函式過程能夠將過程中處理的資訊傳回到呼叫的程式中

D)窗體可以作為過程的引數

(19)在窗體上畫一個名稱為TxtA的文字框,然後編寫如下的事件過程:

Private Sub Txta_KeyPress(keyascii as integer)

End Sub

若焦點位於文字框中,則能夠觸發KeyPress事件的操作是

A)單擊滑鼠 B)雙擊文字框

C)滑鼠滑過文字框 D)按下鍵盤上的某個鍵

(20)目錄列表框的Path屬性的作用是

A)顯示當前驅動器或指定驅動器上的路徑

B)顯示當前驅動器或指定驅動器上的某目錄下的檔名

c)顯示根目錄下的檔名

D)只顯示當前路徑下的檔案

(21)假定有如下事件過程:

PriVate Sub Form_MouseDown(button As Integer,Shift As Integer, x As Single,Y As

Single)

If Button=2 then

PopupMenu popForm

End if

End Sub

則以下描述中錯誤的是

A)該過程的功能是彈出一個選單

B)popForm 是在選單編輯器中定義的彈出式選單的名稱

C)引數X、Y指明滑鼠的當前位置

D)Button=2 表示按下的是滑鼠左鍵

(22)以下能夠正確計算n!的程式是

二級Visual Basic語言程式設計試卷第5頁 (共15頁)

A) Private Sub Commandl_ClicK()

n=5:x=1

Do

X=x*1

i=i十1

Loop While i<n

Print x

End Sub

B) Private Sub Commandl_Click()

n=5: x=1:i=1

Do

X=X*1

i=i十1

Loop While i<n

Print x

End Sub

C)Private Sub Commandl_Click()

n=5:x=1:i=1

Do

X=X*1

i=i十1

Loop while i<=n

Print x

End Sub

D)Private Sub Commandl_C1ick()

n=5:x=1:i=1

Do

X=X*l

i=i十1

loop While i>n

Print x

End Sub

(23)在窗體上畫一個名稱為Commandl的命令按鈕,再畫兩個名稱分別為Labell、Label2

的標籤,然後編寫如下程式程式碼:

. 二級vlsudBM5c語言程式設計試卷第6頁 (共15頁)

Private x As Integer

Private Sub Commandl—Click()

X=5:Y=3

Call proc(x,Y)

Labell.Caption=X

Label2.Caption=Y

End Sub

Private Sub proc(ByVal a As Integer,ByVal b As hteger)

x=a* a

Y=b十b

End Sub

程式執行後,單擊命令按鈕,則兩個標籤中顯示的內容分別是

A)5和3 B)25和3 C)25和6 D)5和6

(24)在窗體上畫一個名稱為Commandl的命令按鈕,一個名稱為Labell的標籤,然後

編寫如下事件過程:

Private Sub Commandl_C1ick()

S=0

For i=1 T0 15

x=2*i一1

1f x Mod 3=0 Then s=s十1

Nexti

Labell.Caption=s

End Sub

. 程式執行後,單擊命令按鈕,則標籤中顯示的內容是

A)1 B)5 C)27 D)45

(25)在窗體上畫一個名稱為Commandl的命令按鈕和三個名稱分別為Labell、Label2、

Label3的標籤,然後編寫如下程式碼:

Private x As Integer

Private Sub Command1_C1ick()

Static y As Integer

Dimz As Integer

n=10

z=n十z

y=y十z

X=X十Z

ion=x

Label2.Caption=y

Label3.Caption=z

End Sub

執行程式,連續三次單擊命令按鈕後,則三個標籤中顯示的內容分別是

A)10 10 10 B)30 30 30 C)30 30 10 D)10 30 30(26)設在窗體上有一個名稱為Commandl的命令按鈕,並有以下事件過程:

PriVate Sub Commandl_C1ick()

Static b As Variant

b=Array(1,3,5,7,9)

End Sub

此過程的功能是把陣列b中的'5個數逆序存放(即排列為9,7,5,3,1)。為實現此功

能,省略號處的程式段應該是

A)For i=0 To 5-1\2

tmp=b(i)

b(i)=b(5-i-1)

b(5-i-1)=tmp

Next

B)for i=0 To 5

tmp=b(i)

b(i)=b(5-i-1)

b(5-i-1)=tmp

Next

C) For i=0 T0 5\2

tmp=b(i)

b(i)=b(5-i-1)

b(5-i-1);tmp

Next

D)For i=1 T0 5\2

tmp=b(i)

b(i)=b(5一i一1)

b(5—i—1)=tmp

Next

(27)在窗體上畫一個名稱為Drivel的驅動器列表框,一個名稱為Dirl的目錄列表框,一個名稱為Filel的檔案列表框,兩個名稱分別為Labell、Label2,標題分別為空白和“共有檔案”的標籤。編寫程式,使得驅動器列表框與目錄列表框、目錄列表框與檔案列表框同步變化,並且在標籤Labell中顯示當前資料夾中檔案的數量。如圖所示。

能夠正確實現上述功能的程式是

A) Private Sub Dirl_Change() B)Private Sub Dir1_Change()

Filel.Path= =dir1.Path

End Sub End Sub

Private Sub Drivel_Change() Private Sub Drive1_Change()

Dirl.Path=Drivel.Drive Dirl.Path=e

Labell.Caption=Count Labell.Captlon=

End Sub End Sub

C)Private Sub Dirl_Change() D) Private Sub Dirl_Change()

Filel.Path=Dirl.Path filel.Path=Dir1.Path

Labell.Caption=Filel.ListCount Labell.Caption=Filel.List

End Sub End Sub

Private Sub Drivel_Change() Private Sub Drivel_Change()

Dirl.Path=Drivel.Drlve Dir1.Path=Drivel.DrlVe

Labell.Caption=Filel.ListCount Labell.Caption=

End Sub End Sub

(28)一個工程中包含兩個名稱分別為Forml、Form2的窗體,一個名稱為mdlFunc的標準

模組。假定在Forml、Form2和mdlFunc中分別建立了自定義過程,其定義格式為:

Forml中定義的過程:

PriVate Sub frmfunctionl()

End Sub

Form2中定義的過程:

Public Sub frmffunction2()

End Sub

mdlFunc中定義的過程:

PubliC Sub mdlFunction()

End Sub

在呼叫上述過程的程式中,如果不指明窗體或模組的名稱,則以下敘述中正確的是

A)上述三個過程都可以在工程中的任何窗體或模組中被呼叫

B)frmfunction2和mdlfunction過程能夠在工程中各個窗體或模組中被呼叫

C)上述三個過程都只能在各自被定義的模組中呼叫

D)只有mdlFunction過程能夠被工程中各個窗體或模組呼叫(29)窗體上有兩個名稱分別為Textl、Text2的文字框,一個名稱為Commandl的命令按鈕。執行後的窗體外觀如圖所示。

設有如下的型別宣告

Type Person

name As String*8

major As String*20

End Type

當單擊“儲存”按鈕時,將兩個文字框中的內容寫入一個隨機檔案Test29.dat中。設文字框中的資料已正確地賦值給Person型別的變數p。則能夠正確地把資料寫入檔案的程式段是

A)0pen”c:\Test29.dat" For Random As#1

Put #1,1,p

Close #1

B)Open "c:\" For Random As #1

Get#1,1,p

C10se #1

C)open "c\Test29.dat" For Random As #1 Len=Len(p)

Put #1,1,p

Close #1

D)Open "c:\Test29.dat " For Random As #1=Len(p)

Get #1,1,p

CloSe #1

(30)在窗體上畫一個名稱為CommonDialogl的通用對話方塊,一個名稱為Commandl的命令按鈕。要求單擊命令按鈕時,開啟一個儲存檔案的通用對話方塊。該視窗的標題為"Save",預設檔名為“SaveFile”,在“檔案型別”欄中顯示*。則能夠滿足上述要求的程式是

A)Private Sub Command_C1ick()

Commondialogl.FileName=“Savefile”

er="All Files|*.*|(*)|*|(*).|*"

CommonDialogl.Filterindex=2

CommonDialogl.Dial0g.title="Save"

CommonDialogl.Action=2

End Sub

B)Private Sub Commandl—Click()

CommonDialogl.FileName="SaveFile"

CommonDiaLogl.Filter="A11 Files|*.*|(*)|*|*.doc|*.doc"

C0mmonDialogl.FilterIndex=1

CommonDialogl.DialogTitle="Save"

CommonDialogl.Action=2

End Sub

C)Private Sub Cmmandl_C1ick()

COmmonDialogl.FileName="Save"

CommonDialogl.FiLter="A11Files|*.*|(*)|*|(*)|*"

CommonDialogl.Filterindex=2

C0mmonDialogl.DialogTitle="SaveFile"

CommonDialogl.Action=2

End Sub

D)Private Sub Commandl_C1ick()

CommonDialogl.FileName="SaveFile"

CommonDialogl.Filter="All Files|*.*|(*)|*|(*)|*"

CommonDialogl.FilterIndex=1

CommonDialogl.DialogTitle=“Save”

CommonDialogl.Action=1

End Sub

  二、填空題(每空2分,共30分)

請將每空的正確答案寫在答題卡[1]一[15序號的橫線上,答在試卷上不得分。

(1)visual Basic中有一種控制元件組合了文字框和列表框的特性,這種控制元件是________

(2)Visual Basic提供的對資料檔案的三種訪問方式為隨機訪問方式_____和二進位制訪問方式。

(3)執行下面的程式段後,變數S的值為_______。

S=5

For i =2.6 To 4.9 Step 0.6

S=S十1

Next i

(4)為了在執行時把d:pic資料夾下的圖形檔案a.jpg裝入圖片框Picturel,所使用的語句為_______。

(5)計時器控制元件能有規律的以一定時間間隔觸發_______事件,並執行該事件過程中的程式程式碼。

(6)以下程式的功能是:生成20個200到300之間的隨機整數,輸出其中能被5整除的數並求出它們的和。請填空。

Private Sub Commandl_C1ick()

Fori=1To 20

x=Int(____________*200+100)

If_______[7] =0 Then

Print x

二級VIsualBMic語言程式設計試卷第12頁 (共15頁)

S=S十 _________ [83

End If

Next i

Print “Sum=”:S

End Sub

(7)設有如下程式

Private Sub Form_Click()

Dim a AS Integer,b As integer

a=20:b=50

pla,b

p2a,b

p3a,b

Print"a=";a,"b=";b

End Sub

Sub pl(x As Integer,ByVal y As Integer)

x=x十10.

v=v十20

End Sub

Sub p2(byVal x As Integer, y As Integer)

x=x十10

y=y十20

End Sub

Sub p3(ByValx As Integer, ByVal y As Integer)

x=x十10

y=y十20

End Sub

該程式執行後,單擊窗體,則在窗體上顯示的內容是:a=______和b=______。

(8)在窗體上畫一個名稱為Commandl的命令按鈕,編寫如下事件過程

PRiVate Sub Commandl_C1icK()

Dim As String

a=_____[11]

For i =1 To 5

Print Space(6—i);Mid$3(a,6—i,2*i—1)

二級V1sualBMic語言程式設計試卷第13頁 (共15頁)

Nexti

End Sub

程式執行後,單擊命令按鈕,要求窗體上顯示的輸出結果為

456

34567

2345678

123456789

請填空。(9)在窗體上畫一個名稱為Combo1的組合框,畫兩個名稱分別Label1和Label2及Caption

屬性分別為“城市名稱”和空白的標籤。程式執行後,當在組合框中輸入一個新項

後按回車鍵(ASCII碼為13)時,如果輸入的項在組合框的列表中不存在,則自動

新增到組合框的列表中,並在Label2中給出提示“已成功新增輸入項”如圖所示;

如果存在,則在Label2中給出提示“輸入項已在組合框中”。請在[12>、[13]和

[14>處將程式補充完整。

Private Sub Combol_________<12>(KeyAscii As integer)

1f KeyAscii=13 Then

Fori=0 To Combo1.listCount—1

1f Combo1.Text=______ [13] Ihen

Label2.Caption=”輸入項己在組合框中”

ExIt Sub

End lf

Next i

Label2.Caption=“已成功新增輸入項”

Combo1.______ [14] CombO1.Text

End lf

End Sub

(10)設有如下程式

Private sub search(a()As variant,ByVal key As Variant,index%)

Dim I%

ForI=LBound(a)To UBound(a)

If key=a(I) Then

index=I

Exit Sub

End If

Next I

Index=-1

End Sub

Private Sub Form_Load()

Show

Dtm b() As Variant

Dim n As Integer

b=Array(1,3,5,7,9,11,13,15)

Call search(b,11,n)

Printt n

End Sub

程式執行後,輸出結果是________。

  答案:

一、選擇題

1-5:DADBB 6-10:ACCAD 11-15:DBBDD

16-20:ABCDA 21-25:DCBBC 26-30:CCDCA

二、填空題

(1) 組合框

(2) 順序訪問方式

(3) 9

(4) Picture1.picture=LoadPicture("d:pica.jpg")

(5) Timer

(6) Rnd和x Mod 5和x

(7) 30和70

(8) "123456789"

(9) KeyPress和(i)和AddItem

(10) 5