糯米文學吧

位置:首頁 > 計算機 > 計算機二級

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

為了使廣大考生在備戰計算機等級考試時,更快的掌握相應知識點,下面是小編搜索整理的全國計算機等級考試二級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