歷年二級VB語言筆試真題及答案_第1頁
歷年二級VB語言筆試真題及答案_第2頁
歷年二級VB語言筆試真題及答案_第3頁
歷年二級VB語言筆試真題及答案_第4頁
歷年二級VB語言筆試真題及答案_第5頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

全國計算機等級考試二級VB試卷

一、選擇題

1、程序流程圖中帶有箭頭的線段表示的是

A)圖元關(guān)系B)數(shù)據(jù)流C)控制流D)調(diào)用關(guān)系

2、結(jié)構(gòu)化程序設(shè)計的基本原則不包括

A)多態(tài)性B)自頂向下C)模塊化D)逐步求精

3、軟件設(shè)計中模塊劃分應(yīng)遵循的準則是

A)低內(nèi)聚低耦合B)高內(nèi)聚低耦合C)低內(nèi)聚高耦合D)高內(nèi)聚高耦合

4、在軟件開發(fā)中,需求分析階段產(chǎn)生的主要文檔是

A)可行性分析報告B)軟件需求規(guī)格說明書C)概要設(shè)計說明書D)集成測試計劃

5、算法的有窮性是指

A)算法程序的運行時間是有限的B)算法程序所處理的數(shù)據(jù)量是有限的

C)算法程序的長度是有限的D)算法只能被有限的用戶使用

6、對長度為n的線性表排序,在最壞的情況下,比較次數(shù)不是n(nT)/2的排序方法是

A)快速排序B)冒泡排序C)直接插入排序D)堆排序

7、下列關(guān)于棧的敘述正確的是

A)棧按“先進先出”組織數(shù)據(jù)B)棧按“先進后出”組織數(shù)據(jù)

C)只能在棧底插入數(shù)據(jù)D)不能刪除數(shù)據(jù)

8、在數(shù)據(jù)庫設(shè)計中,將E—R圖轉(zhuǎn)換成關(guān)系數(shù)據(jù)模型的過程屬于

A)需求分析階段B)概念設(shè)計階段C)邏輯設(shè)計階段D)物理設(shè)計階段

9、有三個關(guān)系R、S和T(略)

10、設(shè)有表示學(xué)生選課的三張表,學(xué)生S(學(xué)號,姓名,性別,年齡,身份證號),課程(課

號,課名),選課SC(學(xué)號,課號,成績),則表SC的關(guān)鍵字(鍵或碼)為

A)課號,成績B)學(xué)號,成績C)學(xué)號,課號D)學(xué)號,姓名,成績

11、以下敘述中錯誤的是

A)標準模塊文件的擴展名是.basB)標準模塊文件是純代碼文件

C)在標準模塊中聲明的全局變量可以在整個工程中使用D)在標準模塊中不能定義過程

12、在VisualBasic中,表達式3*2\5Mod3的值是

A)1B)0C)3D)出現(xiàn)錯誤提示

13、以下選項中,不合法的VisualBasic變量名是

A)a5bB)_xyzC)a_bD)andif

14、以下數(shù)組定義語目中,錯誤的是

A)Statica(10)AsIntegerB)Dimc(3,1to4)

C)Dimd(-10)D)Dimb(0to5,1to3)AsInteger

15、現(xiàn)有語句:y=IIf(x>0,xMod3,0),設(shè)x=10,則y的值是

A)0B)1C)3D)語句有錯

16、為了使文本框同時具有垂直和水平滾動條,應(yīng)先把MultiLine屬性設(shè)置為True,然后再

把Scrollbars屬性設(shè)置為

A)0B)1C)2D)3

17、文本框Textl的KeyDown事件過程如下:

PrivateSubTextl_KeyDown(KeyCodeAsInteger,ShiftAsInteger)

EndSub

其中參數(shù)KeyCode的值表示的是發(fā)生此事件時

A)是否按下了Alt鍵或Ctrl鍵B)按下的是哪個數(shù)字鍵

C)所按的鍵盤鍵的鍵碼D)按下的是哪個鼠標鍵

18、窗體上有?個名稱為Hscrolll的滾動條,程序運行后,當單擊滾動條兩端的箭頭時,立

即在窗體上顯示滾動框的位置(即刻度值)。下面能夠?qū)崿F(xiàn)上述操作的事件過程是

A)PrivateSubHscrol1l_Changc()B)PrivateSubHsctrol1l_Change()

PrintHScrolll.ValuePrint

HScrolll.SmallChange

EndSubEndSub

C)PrivateSubHScrolllScroll()D)PrivateSubHScrolll_Scroll0

PrintHScrolll.ValuePrint

HScrolll.SmallChange

EndSubEndSub

19、若已把一個命令按鈕的Default屬性設(shè)置為True,則下面可導(dǎo)致按鈕的Click事件過

程被調(diào)用的操作是

A)用鼠標右鍵單擊此按鈕B)按鍵盤上的Esc鍵

C)按鍵盤上的回車鍵D)用鼠標右鍵雙擊此按鈕

20、要使兩個單選按鈕屬于同一個框架,正確的操作是

A)先畫一個框架,再在框架中畫兩個單選按鈕

B)先畫一個框架,再在框架外畫兩個單選按鈕,然后把單遠按鈕拖到框架中

C)先畫兩個單選按鈕,再畫框架將單選按鈕框起來

D)以上三種方法都正確

21、能夠存放組合框的所有項目內(nèi)容的屬性是

A)CaptionB)TextC)ListD)Selected

22、設(shè)窗體上有一個標簽Labe11和一個計時器Timerl,Timerl的Interval屬性被設(shè)置為

1000,Enabled屬性被設(shè)置為True。要求程序運行時每秒在標簽中顯示一次系統(tǒng)當前時間。

以下可.以實現(xiàn)上述要求的事件過程是

A)PrivateSubTimerl_Timer()B)PrivateSubTimerl_Timer()

Label1.Caption=TrueLabel1.Caption=Time$

EndSubEndSub

C)PrivateSubTimerl_Timer()D)PrivateSubTimerl_Timer()

Label1.Interval=lFork=1To

Timerl.Interval

EndSubLabel1.Caption=Timer

Nextk

EndSub

23、設(shè)有窗體上有一文本框和一按鈕和以下程序:

PrivateSubCommand1_Click()

Textl.Text=^VisualBasic”

EndSub

PrivateSubTextl_LostFocus()

IfTextl.Text<>“BASIC”Then

Textl.Text=w

Textl.SetFocus

EndIf

EndSub

程序運行時,在Textl文件框中輸入“Basic”(如圖所示),然后單擊Commandl按鈕,則產(chǎn)

生的結(jié)果是

A)文本框中無內(nèi)容,焦點在文本框中B)文本框中為“Basic”,焦點在文本框中

C)文本框中為“Basic”,焦點的按鈕上D)文本框中為“VisualBasic”,焦點的按鈕上

24、窗體上有一個名稱為Commandl的命令按鈕,其事件過程如下:

PrivateSubCommand1_Click()

x=VisualBasicProgramming,,

a=Right(x,11)

b=Mid(x,7,5)

C=Msgbox(a,,b)

EndSub

運行程序后單擊命令按鈕,以下敘述中錯誤的是

A)信息框的標題是BasicB)信息框中的提示信息是Programming

0C的值是函數(shù)的返回值D)MsgBox的使用格式有錯

25、設(shè)工程文件包含兩個窗體文件Forml.frm、Form2.frm及一個標準模塊文件Modulel.bas,

兩個窗體上分別只有一個名稱Commandl的命令按鈕。

Forml的代碼如下:

PublicXAsInteger

PrivateSubForm_load()

x=l

y=5

EndSub

PrivateSubCommandlClickO

Form2.Show

EndSub

Form2的代碼如下:

PrivateSubCommandl_Ciick()

PrintForml.x,y

EndSub

Modulel的代碼如下:

PublicyAsInteger

運行以上程序,單擊Forml的命令按鈕Commandl,則顯示Form2;再單擊Form2上的命令按

鈕Commandl,則窗體上顯示的是

A)15B)05C)00D)程序有錯

26、窗體上有?個名稱Textl的文本框,一個名稱為Commandl的命令按鈕。窗體文件的程序

如下:

PrivateTypex

aAsInteger

bASInteger

EndType

PrivateSubCommandlClickO

DimyAsx

y.a=InputBox("")

Ify.a\2=y.a/2Then

y.b=y.a*y.a

Else

y.b=Fix(y.a/2)

EndIf

Textl.Text=y.b

EndSub

對以上程序,下列敘述中錯誤的是

A)x是用戶定義的類型B)InputBox函數(shù)彈出的對話框中沒有提示信息

C)若輸入的是偶數(shù),y.b的值為該偶數(shù)的平方

D)Fix(y.a/2)把y.a/2的小數(shù)部分四舍五入,轉(zhuǎn)換為整數(shù)返回

27、窗體上有一個名稱為CD1的通用對話框控件和由四個命令按鈕組成的控件數(shù)Command1,

其下標從左到右分別為0、1、2、3,caption分別為打開、保存、打印、退出。窗體外觀如圖

所示。

命令按鈕的事件過程如下:

PrivateSubCommand1_Click(IndexAsInteger)

SelectCaseIndex

Case0

CD1.Action=l

Case1

CD1.ShowSave

Case2

CD1.Action=5

Case3

End

EndSelect

EndSub

對上述程序,下列敘述中錯誤的是

A)單擊“打開”按鈕,顯示打開文件的對話框

B)單擊“保存”按鈕,顯示保存文件的對話框

C)單擊“打印”按鈕,能夠設(shè)置打印選項,并執(zhí)行打印操作

D)單擊“退出”按鈕,結(jié)束程序的運行

28、窗體上有兩個水平滾動條HV、HT,還有一個文本框Textl和一個標題為“計算”的命令

按鈕Commandl,并編寫了以下程序:

PrivateSubCommandl_ClickO

CallCale(HV.Value,HT.Value)

EndSub

PublicSubCale(xASInteger,yASInteger)

Textl.Text=x*y

EndSub

運行程序,單擊“計算”按鈕,可根據(jù)速度與時間計算出距離,并顯示計算結(jié)果。對以上程

序,下列敘述中正確的是

A)過程調(diào)用語句不對,應(yīng)為Cale(HV,HT)

B)過程定義語句的形式參數(shù)不對,應(yīng)為SubCale(xAsControl,yAsControl)

0計算結(jié)果在文本框中顯示出來

D)程序不能正確運行

29、現(xiàn)有如下程序:

PrivateSubCommand1_Click()

S=0

Fori=lto5

S=S+f(5+i)

Next

PrintS

EndSub

PublicFunctionf(xAsInteger)

Ifx>=10Then

t=x+l

Else

t=x+2

EndIf

f=t

EndFunction

運行程序,則窗體上顯示的是

A)38B)49C)61D)70

30、窗體上有一個用菜單編輯器設(shè)計的菜單(見上圖)。運行程序,并在窗體上單擊鼠標右

鍵,則彈出一個快捷菜單,有三個選項:復(fù)制、粘貼(灰色)、選中(前面打勾)。以下敘

述中錯誤的

A)在設(shè)計“粘貼”菜單項時,在菜單編輯器窗口中設(shè)置了“有效”屬性(有“)

B)菜單中的橫線是在該菜單項的標題輸入框中輸入了一個“一”(減號)字符

C)在設(shè)計“選中”菜單項時,在菜單編輯器窗口中設(shè)置了“復(fù)選”屬性(有“)

D)在設(shè)計該彈出菜單的主菜單項時,在菜單編輯器窗口中去掉了“可見”前面的“

31、窗體上有一個名稱為Picturel圖片框控件,一個名稱Labell的標簽控件。

現(xiàn)有如下程序:

PublicSubdisplay(xAsControl)

IfTypeOfxisLabelThen

x.Caption="計算機等級考試”

Else

x.Picture=Loadpicture("pic.jpg")

Endlf

EndSub

PrivateSubLabell_Click()

Calldisplay(Labell)

EndSub

PrivateSubPicturel_Click()

Calldisplay(Picturel)

EndSub

對以上程序,下列敘述中錯誤的是

A)程序運行時會出錯B)單擊圖片框,在圖片框中顯示一幅圖片

C)過程中的X是控件變量D)單擊標簽,在標簽中顯示一串文字

32、窗體上有兩個名稱分別為Textl、Text2的文本框。Textl的KeyUp的事件過程如下:

PrivateSubTextl_Keyllp(KeyCodeAsInteger,shiftASInteger)

DimCASstring

Tcxt2.Text=Chr(Asc(c)+2)

EndSub

當向文本框Textl中輸入小寫字母a時,文本框Text2中顯示的是

A)AB)aC)CD)c

33、設(shè)窗體上有一個文體框Textl和一個命令按鈕Commandl,并有以下事件過程:

PrivateSubCommand1_Click()

DimSAsString,chAsString

S="”

Fork=lTOLen(Textl)

ch=Mid(Textl,k,1)

S=ch+S

Nextk

Textl.Text=S

EndSub

程序執(zhí)行時,在文本框中輸入“Basic",然后單擊命令按鈕,則Textl中顯示的是

A)BasicB)cisaBC)BASICD)CISAB

34、某人編寫了如下程序,用來求10個整數(shù)(整數(shù)從鍵盤輸入)中的最大值:

PrivateSubCommandl_Click()

Dima(10)AsInteger,maxAsInteger

Fork=lTO10

a(K)=InputBox(“輸入一個整數(shù)”)

Nextk

Max=0

Fork=lTo10

Ifa(k)>maxThen

Max=a(k)

EndIf

Nextk

Printmax

EndSub

運行程序時發(fā)現(xiàn),當輸入10個正數(shù)時,可以得到正確結(jié)果,但輸入10個負數(shù)時結(jié)果是錯誤

的,程序需要修改,下面的修改中可以得到正確運行結(jié)果的是

A)把Ifa(k)>maxThen改為Ifa(k)<maxThenB)把max=a(k)改為a(k)=max

C)把第2個循環(huán)語句Fork=lTO10改為Fork=2TO10D)把max=0改為max=a(10)

35、已知在4行3列的全局數(shù)組score(4,3)中存放了4個學(xué)生3門課程的考試成績(均為整

數(shù))。現(xiàn)需要計算每個學(xué)生的總分,某人編寫程序如下:

OptionBase1

PrivateSubCommand1_Click()

DimsumAsInteger

Sum=0

Fori=lTo4

Forj=lTo3

Sum=sum+score(i,j)

Nextj

Print"第”&i&”個學(xué)生的總分是:";sum

Nexti

EndSub

運行此程序時發(fā)現(xiàn),除第1個人的總分計算正確外,其他人的總分是錯誤的。程序需要修改。

以下修改方案中正確的是

A)把外層循環(huán)語句Fori=lTO4改為Fori=lTo3

內(nèi)層循環(huán)語句Forj=lTO3改為Forj=lTO4

B)把sum=0移到Fori=lTO4和Forj=lTO3之間

C)把sum=sum+score(i,j)改為sum=sum+score(j,i)

D)把sum=sum+score(i,j)改為sum=score(i,j)

二、填空題

(1)測試用例包括輸入值集和[1]值集。

(2)深度為5的滿二叉樹有[2]個葉子結(jié)點。

(3)設(shè)某循環(huán)隊列的容量為50,頭指針Front=5(指向隊頭元素的前一位置),尾指針rear=29

(指向隊尾元素),則該循環(huán)隊列中共有[3]個元素。

(4)在關(guān)系數(shù)據(jù)庫中,用來表示實體之間聯(lián)系的是[4]0

(5)在數(shù)據(jù)庫管理系統(tǒng)提供的數(shù)據(jù)定義語言、數(shù)據(jù)操縱語言和數(shù)據(jù)控制語言中,

[5]負責(zé)數(shù)據(jù)的模式定義與數(shù)據(jù)的物理存取構(gòu)建。

(6)設(shè)有以下的循環(huán):要求程序運行時執(zhí)行3次循環(huán)體,請?zhí)羁铡?/p>

x=l

DO

x=x+2

Printx

LoopUntil[6]

(7)窗體上命令按鈕Commandl的事件過程如下:

PrivateSubCommand1_C1ick()

DimtotalAsInteger

total=s(1)+s(2)

Printtotal

EndSub

PrivateFunctions(mAsInteger)AsInteger

StaticxAsInteger

Fori=1Tom

x=x+l

Nexti

S=x

EndFunction

運行程序,第3次單擊命令按鈕Commandl時,輸出結(jié)果為[7]

(8)在窗體上畫一個名稱為Commandl的命令按鈕,然后編寫如下程序:

OptionBase1

PrivateSubCommand1_Click()

Dima(10)AsInteger

Fori=lTo10

a⑴二i

Next

Callswap([8])

Fori=lTo10

Printa(i)

Next

EndSub

Subswap(b()AsInteger)

n=[9]

Fori=lTon/2

t=b(i)

b(i)=b(n)

b(n)=t

[10]

Next

EndSub

上述程序的功能是,通過調(diào)用過程swap,調(diào)換數(shù)組中數(shù)值的存放位置,即a(l)與a(10)的值

互換,a(2)與a(9)的值互換,請?zhí)羁铡?/p>

(9)在窗體上面一個通用對話框,其名稱為CommonDialogl,然后畫一個命令按鈕,并編寫

如下事件過程:

PrivateSubCommandl_Click()

CommonDialogl.Filter=^AllFiles(*.*)|*.*|TextFiles”_

&”(*.txt)|*.txt|BatchFiles(*.bat)|*.bat”

CommonDialoglFilterlndex=l

Commondialogl.ShowOpen

MsgBoxConunonDialogl.FileName

EndSub

程序運行后,單擊命令按鈕,將顯示一個“打開”對話框,此時在“文件類型”框中顯示的

是[11];如果在對話框中選擇d盤temp目錄下的tel.txt文件,然后單擊“確定”按鈕,

則在MsgBox信息框中顯示的提示信息是[12]o

(10)以下程序的功能是:把程序文件smtextl.txt的內(nèi)容全部讀入內(nèi)存,并在文本框Textl

中顯示出來。請?zhí)羁铡?/p>

PrivateSubCommand1_Click()

DiminDataAsString

Textl.Text=""

Opensmtextl.txt”[13]As[14]

DoWhile[15]

Input#2,inData

Textl.Text=Textl.Text&inData

Loop

Close#2

EndSub

2008年9月全國計算機等級考試二級筆試試卷

一、選擇題(每小題2分,共70分)

(1)一個棧的初始狀態(tài)為空?,F(xiàn)將元素1、2、3、4、5、A、B、C、D、E依次入棧,然后再

依次出棧,則元素出棧的順序是()o

A)12345ABCDE

B)EDCBA54321

C)ABCDE12345

D)54321EDCBA

(2)下列敘述中正確的是()o

A)循環(huán)隊列有隊頭和隊尾兩個指針,因此,循環(huán)隊列是非線性結(jié)構(gòu)

B)在循環(huán)隊列中,只需要隊頭指針就能反映隊列中元素的動態(tài)變化情況

C)在循環(huán)隊列中,只需要隊尾指針就能反映隊列中元素的動態(tài)變化情況

D)循環(huán)隊列中元素的個數(shù)是由隊頭指針和隊尾指針共同決定

(3)在長度為〃的有序線性表中進行二分查找,最壞情況下需要比較的次數(shù)是()o

A)0(77)

B)0(/72)

C)0(log2z?)

D)0(z?log2z?)

(4)下列敘述中正確的是()□

A)順序存儲結(jié)構(gòu)的存儲一定是連續(xù)的,鏈式存儲結(jié)構(gòu)的存儲空間不一定是連續(xù)的

B)順序存儲結(jié)構(gòu)只針對線性結(jié)構(gòu),鏈式存儲結(jié)構(gòu)只針對非線性結(jié)構(gòu)

C)順序存儲結(jié)構(gòu)能存儲有序表,鏈式存儲結(jié)構(gòu)不能存儲有序表

D)鏈式存儲結(jié)構(gòu)比順序存儲結(jié)構(gòu)節(jié)省存儲空間

(5)數(shù)據(jù)流圖中帶有箭頭的線段表示的是()。

A)控制流

B)事件驅(qū)動

C)模塊調(diào)用

D)數(shù)據(jù)流

(6)在軟件開發(fā)中,需求分析階段可以使用的工具是()□

A)N-S圖

B)DFD圖

C)PAD圖

D)程序流程圖

(7)在面向?qū)ο蠓椒ㄖ?,不屬于“對象”基本特點的是()。

A)一致性

B)分類性

C)多態(tài)性

D)標識唯一性

(8)一間宿舍可住多個學(xué)生,則實體宿舍和學(xué)生之間的聯(lián)系是()o

A)一對一

B)一對多

C)多對一

D)多對多

(9)在數(shù)據(jù)管理技術(shù)發(fā)展的三個階段中,數(shù)據(jù)共享最好的是()。

A)人工管理階段

B)文件系統(tǒng)階段

C)數(shù)據(jù)庫系統(tǒng)階段

D)三個階段相同

(10)有三個關(guān)系R、S和T如下:

RST

A|B

m~~|T

n2

關(guān)

R和S通過運算得到關(guān)系T,則所使用的運算為()0

A>笛

B>交

C>并

D)自然連接

(11)在設(shè)計窗體時雙擊窗體的任何地方,可以打開的窗口是()o

A)代碼窗口

B)屬性窗口

C)工程資源管理器窗口

D)工具箱窗口

(12)若變量a未事先定義而直接使用(例如:a=0),則變量a的類型是()。

A)Integer

B)String

C)Boolean

D)Variant

(13)為把圓周率的近似值3.14159存放在變量pi中,應(yīng)該把變量pi定義為()。

A)DimpiAsInteger

B)Dimpi(7)AsInteger

C)DimpiAsSingle

D)DimpiAsLong

(14)表達式2*3-2+4*2/2+3八2的值是()0

A)30

B)31

C)49

D)48

(15)以下不能輸出“Program”的語句是()。

A)PrintMid(z,VBProgramz/,3,7)

B)PrintRight(〃VBProgram〃,7)

C)PrintMid(〃VBProgranT,3)

D)PrintLeft(,,VBProgram,/,7)

(16)窗體上有一個名稱為Framel的框架(如圖),若要把框架上顯示的“Framel”改為漢

字“框架”,下面正確的語句是()。

A)FrameLName=〃框架〃

B)FrameLCaption=〃框架〃

C)Framel.Text="框架"

D)Framel.Value="框架”

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

A)在通用過程中,多個形式參數(shù)之間可以用逗號作為分隔符

B)在Print方法中,多個輸出項之間可以用逗號作為分隔符

C)在Dim語句中,所定義的多個變量可以用逗號作為分隔符

D)當一行中有多個語句時,可以用逗號作為分隔符

(18)設(shè)窗體上有一個列表框控件Listl,含有若干列表項。以下能表示當前被選中的列表

項內(nèi)容的是()o

A)Listl.List

B)Listl.Listindex

C)Listl.Text

D)Listl.Index

(19)設(shè)a=4,b=5,c=6,執(zhí)行語句Printa<bAndb〈c后,窗體上顯示的是()。

A)True

B)False

C)出錯信息

D)0

(20)執(zhí)行下列語句

strInput=InputBox(“請輸入字符串”,〃字符串對話框“,"字符串")

將顯示輸入對話框。此時如果直接單擊“確定”按鈕,則變量strinput的內(nèi)容是

()o

A)”請輸入字符串"B)"字符串對話框"C)"字符串"D)空字

符串

(21)窗體上有CommandsCommand2兩個命令按鈕?,F(xiàn)編寫以下程序:

OptionBase0

Dima()AsInteger,mAsInteger

PrivateSubCommand1_Click()

m=InputBox("請輸入一個正整數(shù)”)

ReDima(m)

EndSub

PrivateSubCommand2_Click()

m=InputBox(“請輸入正整數(shù)”)

ReDima(m)

EndSub

運行程序時,單擊Commandl后輸入整數(shù)10,再單擊Command2后輸入整數(shù)5,則數(shù)組a中元

素的個數(shù)是()0

A)5

B)6

C)10

D)11

(22)在窗體上畫一個命令按鈕和一個標簽,其名稱分別為Commandl和Label1,然后編寫

如下事件過程:

PrivateSubCommand1_Click()

Counter=0

Fori=lTo4

Forj=6To1Step-2

Counter=Counter+l

Nextj

Nexti

Label1.Caption=Str(Counter)

EndSub

程序運行后,單擊命令按鈕,標簽中顯示的內(nèi)容是()o

A)11

B)12

C)16

D)20

(23)在窗體上畫一個名為Commandl的命令按鈕,然后編寫以下程序:

PrivateSubCommandl_Click()

DimM(10)AsInteger

Fork=lTo10

M(k)=12-k

Nextk

x=8

PrintM(2+M(x))

EndSub

運行程序,單擊命令按鈕,在窗體上顯示的是()o

A)6

B)5

C)7

D)8

(24)以下關(guān)于過程及過程參數(shù)的描述中,錯誤的是()o

A)調(diào)用過程時可以用控件名稱作為實際參數(shù)

B)用數(shù)組作為過程的參數(shù)時,使用的是“傳地址”方式

C)只有函數(shù)過程能夠?qū)⑦^程中處理的信息傳回到調(diào)用的程序中

D)窗體(Form)可以作為過程的參數(shù)

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

的標簽,然后編寫如下程序代碼:

PrivateXAsInteger

PrivateSubCommandl_Click()

X=5:Y=3

Callproc(X,Y)

Labe11.Caption=X

Label2.Caption=Y

EndSub

PrivateSubproc(aAsInteger,ByVaibAsInteger)

X=a*a

Y=b+b

EndSub

程序運行后,單擊命令按鈕,則兩個標簽中顯示的內(nèi)容分別是()o

A)25和3

B)5和3

C)25和6

D)5和6

(26)在窗體上有兩個名稱分別為Textl、Text2的文本框,一個名稱為Commandl的命令按

鈕。運行后的窗體外觀如圖所示。

設(shè)有如下的類型和變量聲明:

PrivateTypePerson

nameAsString*8

majorAsString*20

EndType

DimpAsPerson

設(shè)文本框中的數(shù)據(jù)已正確地賦值給Person類型的變量p,當單擊“保存”按鈕時,能夠正確

地把變量中的數(shù)據(jù)寫入隨機文件Test2.dat中的程序段是()。

A)Open"c:\Test2.dat"ForOutputAs#1

Put#1,1,p

Close#1

B)Open'c:\Test2.dat"ForRandomAs#1

Get#1,1,p

Close#1

C)Open"c:\Test2.dat"ForRandomAs#1Len=Len(p)

Put#1,1,p

Close#1

D)Open'c:\Test2.dat"ForRandomAs#1Len=Len(p)

Get#1,1,p

Close#1

(27)在窗體上畫一個名稱為Textl的文本框和一個名稱為Commandl的命令按鈕,然后編寫

如下事件過程:

PrivateSubCommandl_Click()

DimiAsInteger,nAsInteger

Fori=0To50

i=i+3

n=n+l

Ifi>10ThenExitFor

Next

Textl.Text=Str(n)

EndSub

程序運行后,單擊命令按鈕,在文本框中顯示的值是()o

A)2

B)3

C)4

D)5

(28)假定有以下循環(huán)結(jié)構(gòu)

DoUntil條件表達式

循環(huán)體

Loop

則以下正確的描述是()。

A)如果“條件表達式”的值是0,則一次循環(huán)體也不執(zhí)行

B)如果“條件表達式”的值不為0,則至少執(zhí)行一次循環(huán)體

C)不論“條件表達式”的值是否為“真”,至少要執(zhí)行一次循環(huán)體

D)如果“條件表達式”的值恒為0,則無限次執(zhí)行循環(huán)體

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

PrivateSubCommandl_Click()

DimI,Num

Randomize

Do

For1=1To1000

Num=Int(Rnd*100)

PrintNum;

SelectCaseNum

Case12

ExitFor

Case58

ExitDo

Case65,68,92

End

EndSelect

NextI

Loop

EndSub

上述事件過程執(zhí)行后,下列描述中正確的是()。

A)Do循環(huán)執(zhí)行的次數(shù)為1000次

B)在For循環(huán)中產(chǎn)生的隨機數(shù)小于或等于100

C)當所產(chǎn)生的隨機數(shù)為12時結(jié)束所有循環(huán)

D)當所產(chǎn)生的隨機數(shù)為65、68或92時窗體關(guān)閉、程序結(jié)束

(30)在窗體上畫一個名為Commandl的命令按鈕,然后編寫如下代碼:

OptionBase1

PrivateSubCommand1_Click()

Dima

a=Array(1,2,3,4)

j=l

Fori=4To1Step-1

s=s+a⑴*j

j=j*10

Nexti

Prints

EndSub

運行上面的程序,其輸出結(jié)果是()。

A)1234

B)12

C)34

D)4321

(31)設(shè)有如下通用過程:

PublicFunctionFun(xStrAsString)AsString

DimtStrAsString,strLAsInteger

tStr二〃〃

strL=Len(xStr)

i=l

DoWhilei<=strL/2

tStr=Tstr&Mid(xStr,i,1)&Mid(xStr,strL-i+1,1)

i=i+l

Loop

Fun=tStr

EndFunction

在窗體上畫一個名稱為Commandl的命令按鈕。然后編寫如下的事件過程:

PrivateSubCommandl_Click()

DimSIAsString

SI二〃abcdef”

PrintUCase(Fun(SI))

EndSub

程序運行后,單擊命令按鈕,輸出結(jié)果是()o

A)ABCDEF

B)abcdef

C)AFBECD

D)DEFABC

(32)某人為計算n!(0〈nL12)編寫了下面的函數(shù)過程:

PrivateFunctionfun(nAsInteger)AsLong

DimpAsLong

P=1

Fork=n-lTo2Step-1

p=p*k

Nextk

fun=p

EndFunction

在調(diào)試時發(fā)現(xiàn)該函數(shù)過程產(chǎn)生的結(jié)果是錯誤的,程序需要修改。下面的修改方案中有3種是

正確的,錯誤的方案是()o

A)把p=l改為p=n

B)把Fork=n-lTo2Step-1改為Fork=lTon-l

C)把Fork=n-lTo2Step-1改為Fork=lTon

D)把Fork=n-lTo2Step-1改為Fork=2Ton

(33)假定有以下函數(shù)過程:

FunctionFun(SAsString)AsString

DimsiAsString

Fori=lToLen(S)

sl=LCase(Mid(S,i,l))+sl

Nexti

Fun=sl

EndFunction

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

PrivateSubCommandl_Click()

DimStrlAsString,Str2AsString

Strl=InputBox(〃請輸入一個字符串〃)

Str2=Fun(Strl)

PrintSrt2

EndSub

程序運行后,單擊命令按鈕,如果在輸入對話框中輸入字符串“abcdefg”,則單擊“確定”

按鈕后在窗體上的輸出結(jié)果為()。

A)ABCDEFG

B)abcdefg

C)GFEDCBA

D)gfedcba

(34)為計算求的值,某人編寫了函數(shù)power如下:

PrivateFunctionpower(aAsInteger,nAsInteger)AsLong

DimpAsLong

p=a

Fork=lTon

p=p*a

Nextk

power=p

EndFunction

在調(diào)試時發(fā)現(xiàn)是錯誤的,例如Printpower(5,4)的輸出應(yīng)該是625,但實際輸出是3125。程

序需要修改。下面的修改方案中有3個是正確的,錯誤的一個是()0

A)把Fork=lTon改為Fork=2Ton

B)把p=p*a改為p=p'n

C)把Fork=lTon改為Fork=lTon-1

D)把p=a改為p=l

(35)某人編寫了下面的程序

PrivateSubCommand1_Click()

DimaAsInteger,bAsInteger

a=InputBox("請輸入整數(shù)”)

b=InputBox("請輸入整數(shù)”)

proa

prob

Cal1pro(a+b)

EndSub

PrivateSubpro(nAsInteger)

While(n>0)

PrintnMod10;

n=n\10

Wend

Print

EndSub

此程序功能是:輸入2個正整數(shù),反序輸出這2個數(shù)的每一位數(shù)字,再反序輸出這2個數(shù)之

和的每一位數(shù)字。例如:若輸入123和234,則應(yīng)該輸出:

321

432

753

但調(diào)試時發(fā)現(xiàn)只輸出了前2行(即2個數(shù)的反序),而未輸出第3行(即2個數(shù)之和的反序),

程序需要修改。下面的修改方案中正確的是()o

A)把過程pro的形式參數(shù)nAsInteger改為ByVainAsInteger

B)把Callpro(a+b)改為proa+b

C)把11=11\10改為n=n/10

D)在prob語句之后增加語句c%=a+b,再把Callpro(a+b)改為proc

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

(1)對下列二叉樹進行中序遍歷的結(jié)果【1】0

(2)按照軟件測試的一般步驟,集成測試應(yīng)在【2】測試之后進行。

(3)軟件工程三要素包括方法、工具和過程,其中,【3】支持軟件開發(fā)的各個環(huán)節(jié)的

控制和管理。

(4)數(shù)據(jù)庫設(shè)計包括概念設(shè)計、【4】和物理設(shè)計。

(5)在二維表中,元組的【5】不能再分成更小的數(shù)據(jù)項。

(6)在窗體上畫一個文本框、一個標簽和一個命令按鈕,其名稱分別為TextKLabel1和

Command1,然后編寫如下兩個事件過程:

PrivateSubCommandl_Click()

S$=InputBox("請輸入一個字符串“)

Textl.Text=S$

EndSub

PrivateSubTextl_Change()

Label1.Caption=UCase(Mid(Textl.Text,7))

EndSub

程序運行后,單擊命令按鈕,將顯示一個輸入對話框,如果在該對話框中輸入字符串

“VisualBasic”,則在標簽中顯示的內(nèi)容是[6】。

(7)在窗體上畫一個命令按鈕,其名稱為Commandl,然后編寫如下事件過程:

PrivateSubCommandl_Click()

a$=,,NationalComputerRankExamination"

n=Len(a$)

s=0

Fori=lTon

b$=Mid(a$,i,1)

Ifb$="n〃Then

s=s+l

EndIf

Nexti

Prints

EndSub

程序運行后,單擊命令按鈕,輸出結(jié)果是一【710

(8)為了在運行時把d:\pic文件夾下的圖形文件a.jpg裝入圖片框Pictured所使用的語句

為【8】。

(9)設(shè)有如下程序:

PrivateSubForm_Click()

Cis

a$二〃ABCDFG〃

Fori=lTo6

PrintTab(12~i);[9]

Nexti

EndSub

程序運行后,單擊窗體,結(jié)果如圖所示,請?zhí)羁?/p>

■Forml

G

FG

DFG

CDFG

BCDFG

ABCDFG

(10)在窗體上畫一個命令按鈕,其名稱為Commandl,然后編寫如下代碼:

OptionBase1

PrivateSubCommandl_Click()

DimArr

Arr=Array(43,68,-25,65,-78,12,-79,43,-94,72)

pos=0

neg=0

Fork=lTo10

IfArr(k)>0Then

【10】

Else

【11】

EndIf

Nextk

Printpos,neg

EndSub

以上程序的功能是,計算并輸出數(shù)組Arr中10個數(shù)的正數(shù)之和pos與負數(shù)之和neg,請?zhí)羁铡?/p>

(11)在窗體上畫一個名為Commandl的命令按鈕,然后編寫如下程序:

PrivateSubCommand1_Click()

DimiAsInteger

Sum=0

n=InputBox(^Enteranumber")

n=Val(n)

Fori=lTon

Sum=[12]

Nexti

PrintSum

EndSub

Functionfun(tAsInteger)AsLong

P=1

Fori=lTot

p=p*i

Nexti

【13】

EndFunction

以上程序的功能是,計算1!+上程!+…+n!,其中n從鍵盤輸入,請?zhí)羁铡?/p>

(12)在窗體上畫一個文本框,名稱為Textl,然后編寫如下程序:

PrivateSubForm_Load()

Open"d:\temp\dat.txt"ForOutputAs#1

Textl.Text=〃〃

EndSub

PrivateSubTextl_KeyPress(KeyAsciiAsInteger)

IfKeyAscii=13Then

IfUCase(Textl.Text)=[14]Then

Close#1

End

Else

Write#1,[15]

Textl.Text二〃〃

EndIf

EndIf

EndSub

以上程序的功能是:在D盤temp文件夾下建立一個名為dat.txt的文件,在文本框中輸入字

符,每次按回車鍵都把當前文本框中的內(nèi)容寫入文件dat.txt,并清除文本框中的內(nèi)容:如

果輸入“END”,則不寫入文件,直接結(jié)束程序。請?zhí)羁铡?/p>

2008年9月計算機等級考試VB參考答案

1-5BDCAD

6-10BABCD

11-15ADCBD

16-20BDCAC

21-25BBACA

26-30CBDDA

31-35CBDBA

(1)DBXEAYFZC

(2)單元

(3)過程

(4)邏輯設(shè)計

(5)分量

(6)BASIC

(7)4

(8)Picturel.picture=

"d:\pic\a.jpg”或

Picturel.Picture=

LoadPictureC'd:\pic\a.jpg〃)

(9)Right(a$,i)或者Mid(a$,7-i)

(10)pos=pos+Arr(k)

(11)neg=neg+Arr(k)

(12)sum+fun(i)

(13)fun=p

(14)END

(15)Text1.Text或Textl

2009年4月全國計算機等級考試二級筆試試卷

2010年3月

一、選擇題

(1)下面敘述正確的是(C)

A.算法的執(zhí)行效率與數(shù)據(jù)的存儲結(jié)構(gòu)無關(guān)B.算法的空間復(fù)雜度是指算法程序

中指令(或語句)的條數(shù)C.算法的有窮性是指算法必須能在執(zhí)行有限個步驟之

后終止D.以上三種描述都不對

(2)以下數(shù)據(jù)結(jié)構(gòu)中不屬于線性數(shù)據(jù)結(jié)構(gòu)的是(C)

A.隊列B.線性表C.二叉樹D.棧

(3)在一棵二叉樹上第5層的結(jié)點數(shù)最多是(B)注:由公式2k-l得

A.8B.16C.32D.15

(4)下面描述中,符合結(jié)構(gòu)化程序設(shè)計風(fēng)格的是(A)

A.使用順序、選擇和重復(fù)(循環(huán))三種基本控制結(jié)構(gòu)表示程序的控制邏輯B.模

塊只有一個入口,可以有多個出口C.注重提高程序的執(zhí)行效率D.不使用

goto語句

(5)下面概念中,不屬于面向?qū)ο蠓椒ǖ氖?D)注:P55-58

A.對象B.繼承C.類D.過程調(diào)用

(6)在結(jié)構(gòu)化方法中,用數(shù)據(jù)流程圖(DFD)作為描述工具的軟件開發(fā)階段是(B)

A.可行性分析B.需求分析C.詳細設(shè)計D.程序編碼

(7)在軟件開發(fā)中,下面任務(wù)不屬于設(shè)計階段的是(D)

A.數(shù)據(jù)結(jié)構(gòu)設(shè)計B.給出系統(tǒng)模塊結(jié)構(gòu)

C.定義模塊算法D.定義需求并建立系統(tǒng)模型

(8)數(shù)據(jù)庫系統(tǒng)的核心是(B)

A.數(shù)據(jù)模型B.數(shù)據(jù)庫管理系統(tǒng)C.軟件工具D.數(shù)據(jù)庫

(9)下列敘述中正確的是(C)

A.數(shù)據(jù)庫是一個獨立的系統(tǒng),不需要操作系統(tǒng)的支持B.數(shù)據(jù)庫設(shè)計是指設(shè)計數(shù)

據(jù)庫管理系統(tǒng)C.數(shù)據(jù)庫技術(shù)的根本目標是要解決數(shù)據(jù)共享的問題D.數(shù)據(jù)庫系

統(tǒng)中,數(shù)據(jù)的物理結(jié)構(gòu)必須與邏輯結(jié)構(gòu)一致

(10)下列模式中,能夠給出數(shù)據(jù)庫物理存儲結(jié)構(gòu)與物理存取方法的是(A)注:

P108

A.內(nèi)模式B.外模式C.概念模式D.邏輯模式

(11)算法的時間復(fù)雜度是指(C)

A.執(zhí)行算法程序所需要的時間B.算法程序的長度C.算法執(zhí)行過程中所需要

的基本運算次數(shù)D.算法程序中的指令條數(shù)

(12)算法的空間復(fù)雜度是指(D)

A.算法程序的長度B.算法程序中的指令條數(shù)C.算法程序所占的存儲空間D.

算法執(zhí)行過程中所需要的存儲空間

(13)設(shè)一棵完全二叉樹共有699個結(jié)點,則在該二叉樹中的葉子結(jié)點數(shù)為(B)

注:利用公式叩加+地+豆、n0=n2+l和完全二叉數(shù)的特點可求出

A.349B.350C.255D.351

(14)結(jié)構(gòu)化程序設(shè)計主要強調(diào)的是(B)

A.程序的規(guī)模B.程序的易讀性

21

C.程序的執(zhí)行效率D.程序的可移植性

(15)在軟件生命周期中,能準確地確定軟件系統(tǒng)必須做什么和必須具備哪些功

能的階段是(D)注:即第一個階段

A.概要設(shè)計B.詳細設(shè)計C.可行性分析D.需求分析

(16)數(shù)據(jù)流圖用于抽象描述一個軟件的邏輯模型,數(shù)據(jù)流圖由一些特定的圖符

構(gòu)成。下列圖符名標識的圖符不屬于數(shù)據(jù)流圖合法圖符的是(A)注:P67

A.控制流B.加工C.數(shù)據(jù)存儲D.源和潭

(17)軟件需求分析階段的工作,可以分為四個方面:需求獲取、需求分析、編

寫需求規(guī)格說明書以及(B)注:P66

A.階段性報告B.需求評審C.總結(jié)D.都不正確

(18)下述關(guān)于數(shù)據(jù)庫系統(tǒng)的敘述中正確的是(A)

A.數(shù)據(jù)庫系統(tǒng)減少了數(shù)據(jù)冗余B.數(shù)據(jù)庫系統(tǒng)避免了一切冗余

C.數(shù)據(jù)庫系統(tǒng)中數(shù)據(jù)的一致性是指數(shù)據(jù)類型的一致D.數(shù)據(jù)庫系統(tǒng)比文件系統(tǒng)

能管理更多的數(shù)據(jù)

(19)關(guān)系表中的每一橫行稱為一個(A)

A.元組B.字段C.屬性D.碼

(20)數(shù)據(jù)庫設(shè)計包括兩個方面的設(shè)計內(nèi)容,它們是(A)

A.概念設(shè)計和邏輯設(shè)計B.模式設(shè)計和內(nèi)模式設(shè)計

C.內(nèi)模式設(shè)計和物理設(shè)計D.結(jié)構(gòu)特性設(shè)計和行為特性設(shè)計

(21)下列敘述中正確的是(A)

A.線性表是線性結(jié)構(gòu)B.棧與隊列是非線性結(jié)構(gòu)

C.線性鏈表是非線性結(jié)構(gòu)D.二叉樹是線性結(jié)構(gòu)

(22)下列關(guān)于棧的敘述中正確的是(D)

A.在棧中只能插入數(shù)據(jù)B.在棧中只能刪除數(shù)據(jù)

C.棧是先進先出的線性表D.棧是先進后出的線性表

(23)下列關(guān)于隊列的敘述中正確的是(C)

A.在隊列中只能插入數(shù)據(jù)B.在隊列中只能刪除數(shù)據(jù)

C.隊列是先進

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論