久久99精品久久久久久琪琪,久久人人爽人人爽人人片亞洲,熟妇人妻无码中文字幕,亚洲精品无码久久久久久久

【考試大論壇】-全國計算機二級VB要點總結(共五篇)

時間:2019-05-12 13:36:52下載本文作者:會員上傳
簡介:寫寫幫文庫小編為你整理了多篇相關的《【考試大論壇】-全國計算機二級VB要點總結》,但愿對你工作學習有幫助,當然你在寫寫幫文庫還可以找到更多《【考試大論壇】-全國計算機二級VB要點總結》。

第一篇:【考試大論壇】-全國計算機二級VB要點總結

VB程序設計的初步知識

1.VB的概述

VB是一種可視化、面向對象和采用事件驅動方式的結構化高級程序設計語言。特點:▲ 可視化編程

▲ 面向對象程序設計 ▲ 結構化的程序設計語言 ▲ 事件驅動編程機制 ▲ 訪問數據庫 2.VB的程序開發環境

(1)窗口設計器窗口。簡稱,窗體

(2)工程資源管理器窗口

▲ 工程文件和工程文件組

工程文件的擴展名是vbp,每個工程對應一個工程文件。▲ 窗體文件

擴展名是frm,每一個窗體對應一個窗體文件,一個應用程序可以有多個窗體。▲ 標準模塊文件

擴展名bas,不屬于任何一個窗體。▲ 類模塊文件

(3)屬性窗口和工具箱窗口 3.VB常用對象及操作

(1)對象事件的名稱Name是由VB預定的,不可以由編程者設定。

可以在運行期間改變窗體的Name屬性的值。(?)(2)控件

4.VB應用程序通常有3類模塊組成,即窗體模塊、標準模塊和類模塊。VB應用程序以解釋和編譯方式執行。

5.VB中的變量和常量(1)常量

▲ 文字常量:字符串和數值常量 ▲ 符號常量

格式:Const 變量名=表達式(2)變量

▲ 命名規則:名字只能由字母、數字和下劃線組成。

第一個字符必須是英文字母,最后一個字符可以是類型說明符。

▲變量的類型和定義

①類型說明符放在變量名的尾部。A#b(錯)%:整型 &:長整型!:單精度型 #:雙精度型 $:字符串型 ②在定義變量時指定類型。

格式:Declare 變量名 as 類型

Declare 可以是 Dim、Static、Public或Private(3)變量的作用域

變量分為:局部變量、模塊變量和全局變量

① 局部變量

在事件過程或通用過程內定義的變量叫局部變量。② 模塊變量

窗體變量可用于窗體內的所有過程.當同一個窗體內的不同過程使用相同的變量時,必須定義窗體層變量,在使用窗體層變量前,必須先聲明。

③ 全局變量

全局變量只能在標準模塊中聲明,不能在過程或窗體模塊中聲明。用Public 聲明。

1.VB常用內部函數

⑴ 轉換函數

? 取整函數Int和fix ? 數值轉換函數 ? 類型轉換函數 ? 格式轉換函數

⑵數學函數 ? 三角函數

? 絕對值函數(Abs)? 符號函數(Sgn)?平方根函數(Sqr)

? 指數和對數函數(Exp和Log)

⑶隨機數函數

? 隨機數函數(Rnd)? Randomize語句 ⑷ 時間函數

2.VB字符串處理

?左、中、右部截取 Left(字符串,n)Mid(字符串,n)Right(字符串,n)?字符串長度測量函數 Len(字符串)?Strings函數 Strings(n,ASCII碼)Strings(n,字符串)

?查找某個字符串函數 InStr(首字符位置,字符串1,字符串2[,n] ?字母大小轉換函數 Ucase(字符串)Lcase(字符串)?插入字符串語句 Mid(字符串,位置)=字符串 ?SetFocus語句

8.VB運算符與表達式(1)算術運算符

?求模運算 Mod求余.?算術運算符優先級 ^>>& 如:7^2 Mod 5^23=1(1)關系運算符和邏輯運算符(2)表達式的執行順序

? 關系運算(=,>,<,<>,≦,≧)

? 最后進行邏輯運算,順序為: Not→And→Or→Xor→Eqv

如:表達式: Not a<=c Or 4*c=b^2 And b<>a+c的值是(Flase)a=2,b=3,c=4

9.VB常用標準控件(1).標簽

●Alignment 確認標簽中標題放置的位置,可設置0、1、2,作用分別為標題設置在左、右、中。

●AutoSize 標題自動調整標簽的大小,可設置為True和False.●Borderstyle 設置標簽的邊框,可設置為0和1,0表示為無邊框。●Enabled 用于確定一個窗體或控件能否對用戶產生的事件作出反應。●BackStyle 設置標簽是否覆蓋背景,0表示為透明,1表示標簽覆蓋背景。●WordWrap 決定標簽的標題文本能否自動換行。

●其他:Height、Left、Top、Visible、Width等等。

(2)文本框

屬性:

●MaxLength 設置文本框中輸入的最大字符數。

●MultiLine 設置是否允許多行顯示。

●Passwordchar 用于口令輸入。

●Scrollbars 用來設置文本框中的滾動條。

事件:

◎ Change 事件 當用戶輸入新信息或把Text屬性設置為新值從而改變文本框的屬性時,將可觸發此事件。

◎ GotFocus事件 當文本框有輸入焦點時,鍵盤上輸入的字符都將在文本框中顯示出來,只有當一個文本框被激活并且可見性為TRUE是才能收到焦點。

◎ Setfocus 事件 該方法可以把輸入的光標(焦點)移到指定的文本框中。

格式: [對象.] Setfocus

(3)圖形控件

圖片框和圖像框:

▲ CurrentX和CurrentY屬性 ▲ Picture屬性

▲ Stretch屬性

用于自動調整圖像框中圖形內容的大小。

▲ 區別:① 圖片框是“容器”控件,可作為父控件,而圖像框不能。③ 圖片框可接受文本和圖片,圖像框不能。④ 圖像框占用內存少,顯示速度快。⑤ 圖片框更靈活,且適用于動態環境。▲ 運行期間裝入圖片

格式:[對象.] Picture=LoadPicture(”文件名”)

直線和形狀:

△ BorderColor屬性 △ Borderstyle

1—實線

2—虛線

3—點線

4—點劃線

△ BackStyle 設置標簽是否覆蓋背景,0表示為透明,1表示標簽覆蓋背景。

△ Shape 屬性

0—矩形 1—正方形 2—橢圓形 3—圓形 4—四角圓化的矩形 △ BorderWidth 指定線寬或界寬

(3)復選框和單選按鈕

Enabled、FontBold、FontItalic、FontName、FontSize、FontUnderline Value、Alignment、Height、Left、Top、Visible、Width

單選按鈕:Value=True,表示選擇了該單選按鈕.Value=False, 表示沒有選擇該單選按鈕.復選框:Value=0,表示沒有選擇該復選框。

Value=1,表示選擇該復選框。

Value=2,表示該復選框被禁用。

(6)列表框和組合框

列表框方法:AddItem 添加文本內容到列表框中。

Clear

清除列表框中所有內容。

RemoveItem 刪除列表框中指定的項目。組合框(ComboBox):AddItem、Clear、RemoveItem同樣適用。

Style是組合框的一個重要屬性,其值可取0、1、2,決定組合框的3個類型。

注意: 屬性ListIndex和 ListCout的區別 108(7)

滾動條 屬性:

除Enabled、FontBold、FontItalic、FontName、FontSize、FontUnderline Value、Alignment、Height、Left、Top、Visible、Width外,還有以下屬性: ? Max和Min ? LargeChange和SmallChange ? Value 表示滾動框在滾動條的位置。

事件:主要有Scroll和Change.當在滾動條內拖動滾動框時會觸發Scroll事件,而改變滾動框的位置時會觸發Change事件。

(8)

計時器

可以用Enabled和Name屬性,其最重要的是Interval屬性,取值范圍0~65535.(9)框架

(10)焦點與Tab順序

?設置焦點

格式: [對象.] Setfocus ? Tab順序

Tab順序是在按Tab鍵時焦點在控件間移動的順序。影響Tab順序的屬性是TabIndex。

數據輸入輸出

1.數據的輸出方法: ⑴ print方法

與print方法有關的函數:tab(n)函數 【print tab(24);800】

spc(n)函數

【print “china”;spc(4);”中國” 】用于跳出n個空格輸出

tab函數從第一列開始計數,n是絕對偏移量。spc(n)函數則是從前面的輸出內容開始計數,n是相對偏移量。⑵ 格式輸出()

#:表示數字,不補零

0:表示數字,在數字的前或后補零.:指定小數點的位置,:指定千分分隔符的位置

如:print format$(12345.6,”####,#.##”)12,345.(3)msgbox函數

信息框→ 返回值→標題 2.數據輸出方法(1)inputbox方法

Inputbox函數的返回值默認為字符串。如:a=inputbox(“Enter an integer”)b= inputbox(“Enter an integer”)

text1.text=b+a

如果在輸入對話框中輸入8和10,則文本框中顯示的內容為108

VB的控制結構

1.循環控制結構(1)For循環控制結構

使用Exit for 語句,可以在循環變量到達終值前就退出循環。(2)當循環結構

While 條件 [語句塊] Wend(3)Do循環結構

Do While……Loop

Do ……loop While(4)多分支控制結構

測試表達式=????→Select case 測試表達式(5)IIf函數

A=IIf(條件,true部分,false部分)

數組與過程

1.默認數組

默認數組就是數據類型為Variant的數組。

Static A(4)即為定義了四個默認數組。2.動態數組

? 用變量作為下標定位的數組時動態數組

? 用數值常量或符號常量作為下標定維的數組是靜態數組。

動態數組定義分兩步:首先在窗體層、標準模塊或過程中用DIM或Public聲明一個沒有下標的數組,然后再過程中在用ReDimd定義。3.數組的清除和重定義 Erase 數組名

Erase用于動態數組中,將刪除整個數組結構并釋放數組所占用的內存,即動態數組以后就

不復存在。用于靜態數組中只是內容清空,數組依然存在。4.數組元素的輸入及輸出

輸入:一般通過For循環和Inputbox函數輸出

如: Option base 1 Dim s()as string Sub Form_Click()

Redim s(4)as string For i= 1 to 4 Temp$=Inputbox(“Enter Name”)S(i)= Temp$

Next i End Sub 輸出:用Print方法結合For循環實現

Option base 1 Dim s(4,4)as Integer For i= 1 to 4 For j= 1 to 4 Print s(i,j);“ ” ;

Next j Next i

5.控件數組

控件數組是一組相同類型的控件組成,這些控件有一個相同的控件名稱,具有相同的屬性設置,所有元素的Name屬性相同,但Index屬性不同。6.Sub過程

● 通用過程:多個事件過程需要使用同一個程序代碼,他可以單獨建立,供事件過程或其他過程調用。

● 事件過程:當發生某個事件時,對事件作出響應的程序段。函數過程的返回值只能有一個。

調用Sub過程:① Call語句調用過程。

如:Call Tryout(a,b)② 把過程名作為一個語句使用。

如:Try out a,b 去掉call關鍵字,去掉“實際參數”括號。

7.通用sub過程和事件過程

?重點?難點?

事件過程是一種特殊的sub過程,他附加在窗體和控件上。窗體的事件過程不能由用戶任意定義,而是由系統指定。通常是在事件過程中調用通用過程,同時事件過程也可以被其他過程調用。

通用過程可以放在標準模塊中,也可以放在窗體模塊中,而事件過程只能放在窗體模塊中,不同模塊中的過程可以互相調用。

8.Function過程 ?重點?難點?

Sub過程不直接返回值,可以作為單獨的基本語句使用,而Function過程要返回一個值,通常出現在表達式中。

9.過程中的參數 ⑴ 形參與實參

形參:在Sub過程、Function過程的定義中出現的變量名。

實參:在調用Sub過程、Function過程中傳送給Sub過程、Function過程的常數、變量、表達式或數組。

⑵傳送方式:按位置傳送和指名傳送

▼ 按位置傳送(常考)

實際參數的次序必須和形式參數的次序相匹配 例如:

Private sub proc1(a as integer, b as string, optional x as boolean)??? End sub 正確調用此過程的語句是:proc1 5,”asd”

call proc1(5,”asd”,FALSE)▼ 指名傳送(3)引用

參數通過地址和傳值兩種方式傳送,其中傳送地址稱為引用。通過關鍵字ByRef實現。默認情況下,變量都是通過引用傳送給Sub過程、Function過程的。例如: Sub tryout(x as integer, y as integer)

X=x+100

Y=y*6

Print “x=”;x, ”y=”;y End sub Sub form_click()

Dim a as integer,b as integer

A=10;b=20 Tryout a,b

Print “a=”;a, ”b=”;b End sub 運行后輸出結果為: x=110

y=120

A=110

b=120

(4)傳值

由于通用過程沒有訪問實參的原始地址,因而不會改變原來變量的值,所用的變化都是在變量的副本上進行的。傳值方式通過關鍵字ByVal實現。例如:

Sub tryout(ByVal x as integer, ByVal y as integer)

X=x+100

Y=y*6

Print “x=”;x, ”y=”;y End sub Sub form_click()

Dim a as integer,b as integer

A=10;b=20 Tryout a,b

Print “a=”;a, ”b=”;b End sub 運行后輸出結果為: x=110

y=120

A=10

b=20 函數過程形參的類型與函數返回值的類型沒有關系。

鍵盤與鼠標事件

1.鍵盤事件 ⑴KeyPress事件

當壓下鍵盤上的某個鍵時,將發生KeyPress事件。該事件可以用于各控件。比如用在文本框上的格式:Private Sub Text-KeyPress(KeyAscii as integer)

KeyPress事件帶有一個參數,參數有兩種形式,第一種形式:Index As Integer,只用在控件數組。第二種形式是:KeyAscii As integer,用于單個控件。

KeyPress事件用于識別按鍵的Ascii碼,捕捉擊鍵動作,KeyAscii參數不能省略。

控件的鍵盤事件優先于窗體的鍵盤事件 ⑵KeyDown和KeyUP事件

KeyDown和KeyUP事件返回的是鍵盤的直接狀態。

KeyPress事件返回的是Ascii碼。當按鍵“A”時,KeyDown事件所得到的Keycode碼與鍵“a”的相同。2.鼠標事件

可視化程序設計

1.當窗體為活動窗體時,可以使用“工具”菜單中的“菜單編輯器”打開菜單編輯器。2.彈出式菜單:建立彈出式菜單首先用菜單編輯器建立菜單,然后用PopupMenu方法彈出顯示。

各級菜單中的所有菜單項的名稱必須唯一。

3.通用對話框: 對話框的類型可以通過Action屬性設置,也可以用相應的方法設置。可以通過DialogTitle屬性設置有實際意義的標題。

通用對話框,Action=1 打開文件;

=2 保存文件

方法:showopen;showsave 4.文件對話框: 格式:【窗體】對話框名,Fliter=描述符1|過濾器1| 描述符2|過濾器2|?

FliterIndex 用來指定默認的過濾器。

文件類型 5.多重窗體程序設計

Show方法:用來將指定的窗體裝入內存并顯示該窗體。

6.VB工程中,可以作為啟動對象的程序是Sub main 過程或任何窗體。

一個工程中可以包括多個窗體文件。

數據文件

1基本文件操作語句與函數

⑴ 打開文件 ?重點?難點?

格式:Open文件名【for 方式】 as #文件號

如果省略【for 方式】,則打開文件的存取方式是隨機存取方式。方式指文件的輸出方式,可以是Output(順序輸出)以寫的方式打開、input(順序輸入)、append(添加)。

使用open語句打開文件時,如果為輸入input打開的文件不存在,則產生“文件未找到”的錯誤;如果為Output(順序輸出)、append(添加)訪問方式打開的文件不存在,則建立相應的文件。(2)關閉文件(3)EOF函數

用來測試文件的結束狀態。利用EOF函數,可以避免在文件輸入時出現“輸入超出尾”錯誤。

DO While Not EOF 2.順序文件與隨機文件 ⑴ 順序文件寫操作 Print #文件號,表達式 Write #文件號, 表達式(2)順序文件讀操作 Input #文件號,變量表

(3)隨機文件的打開與讀寫操作

隨機文件的記錄是定長記錄。在用open語言打開文件時必須指定記錄的長度。

打開隨機文件: Open”文件名” for random As #文件號

對文件的操作既可以讀也可以寫。

第二篇:全國計算機二級VB筆試試題總結

2002年4月二級VB筆試試題

一、選擇題1~35題每題2分,共70分。

下列各題A)、B)、C)、D)四個選項中,只有一個選擇是正確的,請將正確選項涂寫在答題卡相應位置上,答在試卷上不得分。

1.下列不能打開屬性窗口的操作是()。

A)執行“視圖”菜單中的“屬性窗口”命令

B)按F4鍵

C)按Ctrl+T

D)單擊工具欄上的“屬性窗口”按鈕。

2.下列可以打開立即窗口的操作是()。

A)Ctrl+D

B)Ctrl+E

C)Ctrl+F

D)Ctrl+G 3.InputBox函數返回值的類型為()。

A)數值 B)字符串 C)變體 D)數值或字符串(視輸入的數據而定)

4.可以同時刪除字符串前導和尾部空白的函數是()。

A)Ltrim

B)Rtrim

C)Trim

D)Mid 5.表達式4+5 6 * 7 / 8 Mod 9 的值是()。

A)4

B)5

C)6

D)7 6.如果在立即窗口中執行以下操作:

a=8

是回車鍵,下同)

b=9

print a>b

則輸出結果是()。

A)-1

B)0

C)False

D)True 7.以下語句的輸出結果是()。

Print Format $(32548.5,“000,000.00”)

A)32548.5

B)32,548.5 C)032,548.50

D)32,548.50 8.執行以下程序段后,變量c$的值為()。

a$=“Visual Basic Programing” b$=“Quick”

c$=b$ & UCase(Mid$(a$,7,6))& Right $(a$,11)

A)Visual BASIC Programing B)Quick Basic Programing C)QUICK Basic Programing

D)Quick BASIC Programing

9.為了在按下回車鍵時執行某個命令按鈕的事件過程,需要把該命令按鈕的一個屬性設置為True,這個屬性是()。

A)Value

B)Default C)Cancel

D)Enabled 10.為了把焦點移到某個指定的控件,所使用的方法是()。

A)SetFocus

B)Visible C)Refresh

D)GetFocus 11.設a=6,則執行 x=IIf(a>5,-1,0)后,x 的值為()。

A)5 B)6 C)0

D)-1

12.執行下面的程序段后,x 的值為()。

x=5

For i=1 To 20 Step 2 x=x+i5 Next i A)21

B)22 C)23

D)24

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

Private Sub Command1_Click()For i=1 To 4 x=4

For j =1 To 3? x=3

For k=1 To 2 x=x+6 Next k Next j Next i Print x End Sub

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

A)7 B)15 C)157 D)538

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

Private Sub Command1_Click()x=0

Do Until x=-1

a = InputBox(“請輸入A的值”)a = Val(a)

b = InputBox(“請輸入B的值”)b = Val(b)

x = InputBox(“請輸入x的值”)x = Val(x)a = a+b+x Loop Print a End Sub

程序運行后,單擊命令按鈕,依次在輸入對話框中輸入5、4、3、2、1、-1,則輸出結果為()。

A)2 B)3

C)14

D)15

15.在窗體(Name屬性為Form1)上畫兩個文本框(其Name屬性分別為Text1和Text2)和一個命令按鈕(Name屬性為Command1),然后編寫如下兩個事件過程:

Private Sub Command1_Click()a=Text1.Text+Text2.Text Print a End Sub

Private Sub Form_Load()Text1.Text=”“ Text2.Text=”“ End sub

程序運行后,在第一個文本框(Text1)和第二個文本框(Text2)中分別輸入123和321,然后單擊命令按鈕,則輸出結果為()。

A)444 B)321123 C)123

321 D)132231 16.閱讀下面的程序段:

For i=1 To 3 For j=1 To i For k=j To 3 a=a+1 Next k Next j Next i

執行上面的三重循環后,a 的值為()。

A)3 B)9 C)14

D)21

17.在窗體上畫一個文本框(其中Name屬性為Text1),然后編寫如下事件過程:

Private Sub Form_Load()Text1.Text=”“ Text1.SetFocus For i=1 To 10 Sum=Sum+i Next i

Text1.Text=Sum End Sub

上述程序的運行結果是()。

A)在文本框Text1中輸出55 B)在文本框Text1中輸出0 C)出錯

D)在文本框Text1中輸出不定值

18.在窗體上畫兩個文本框(其Name屬性分別為Text1和Text2)和一個命令按鈕(其Name屬性為Command1),然后編寫如下事件過程: Private Sub Command1_Click()x=0

Do While x<50 x=(x+2)*(x+3)n=n+1 Loop

Text1.Text=Str(n)Text2.Text=Str(x)End Sub

程序運行后,單擊命令按鈕,在兩個文本框中顯示的值分別為()。

A)1和0 B)2和72 C)3和50

D)4和168 19.用下面語句定義的數組的元素個數是()。

Dim A(-3 To 5)As Integer

A)6 B)7 C)8

D)9 20.以下程序的輸出結果是()。

Option Base 1

Private Sub Command1_Click()Dim a(10),p(3)As Integer k=5 For i=1 To 10 a(i)=i Next i

For i=1 To 3 p(i)=a(i*i)Next i

For i=1 To 3 k=k+p(i)*2 Next i Print k End sub

A)33 B)28 C)35 D)37

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

Option Base 1

Private Sub Commandl_Click()Dim a

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

For i = 4 To Step-1 s = s + a(i)*j j =j*10 Next i Print s End Sub

運行上面的程序,單擊命令按鈕,其輸出結果是()。

A)4321 B)12 C)3D)1234

22.在窗體上畫一個命令按鈕(其Name屬性為Commandl),然后編寫如下代碼:

Option Base 1

Private Sub Commandl_Click()Dim a(4,4)For i =1 To 4 For j =1 To 4 a(i,j)=(i-1)*3+j Next j Next i

For i =3 To 4 For j =3 To 4 Print a(j,i);Next j Print Next i End Sub

程序運行后,單擊命令按鈕,其輸出結果為()。

A)6 9

B)7 10

7&n

bsp;10 11

C)8 11

D)9 12 12

23.假定有如下的Sub過程:

Sub S(x As Single,y As Single)

t = x x =t/y

y =t Mod y End Sub

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

Private Sub Commandl_Click()Dim a As Single Dim b As Single a =5 b =4 S a,b Print a,b End Sub

程序運行后,單擊命令按鈕,輸出結果為()。

A)5 4 B)1 1 C)1.25 4

D)1.25 1 24.閱讀程序:

Function F(a As Integer)b = 0 Static c b = b+1 c = c+1 F = a+b+c End Function

Private Sub Commandl_Click()Dim a As Integer a =2

For i =1 To 3 Print F(a)Next i End Sub

運行上面的程序,單擊命令按鈕,輸出結果為()。

A)4 B)4

C)4

D)4

7

25.閱讀程序:

Sub subP(b()As Integer)For i =1 To 4 b(i)=2*i Next i End Sub

Private Sub Commandl_Click()Dim a(1 To 4)As Integer a(1)=5 a(2)=6 a(3)=7 a(4)=8 subP a()For i =1 To 4 Print a(i)Next i End Sub

運行上面的程序,單擊命令按鈕,輸出結果為()。

A)2 B)5

C)10 D)出錯

26.下列不能打開菜單編輯器的操作是()。

A)按Ctrl+E B)單擊工具欄中的“菜單編輯器”按鈕

C)執行“工具”菜單中的“菜單編輯器”命令 D)按Shift + Alt + M

27.假定有一個菜單項,名為MenuItem,為了在運行時使該菜單項失效(變灰),應使用的語句為()。

A)MenuItem.Enabled=False B)MenuItem.Enabled=True C)MenuItem.Visible=True

D)MenuItem.Visible=False

28.在程序運行期間,如果拖動滾動條上的滾動塊,則觸發的滾動條事件是()。

A)Move B)Change C)Scroll

D)GetFocus

29.假定窗體上有一個標簽,名為Labell,為了使該標簽透明并且沒有邊框,則正確的屬性設置為()。

A)Label1.BackStyle=0

Label1.Borderstyle=0

B)Label1.BackStyle=1

Label1.Borderstyle=1

C)Label1.BackStyle=True

Label1.BorderStyle=True

D)Label1.BackStyle=False

Label1.Borderstyle=False

30.在窗體上畫一個列表框和一個文本框,然后編寫如下兩個事件過程:

Private Sub Form_Load()List1.AddItem”357“ List1.AddItem”246“ List1.AddItem”123“ Listl.AddItem”456“ Text1.Text=”“ End Sub

Private Sub List1_ DblClick()a =List1.Text

Print a+Text1.Text End Sub

程序運行后,在文本框中輸入“789”(見圖附錄-1),然后雙擊列表框中的“456”,則輸出結果為()。

圖附錄-1

A)1245

B)456789

C)789456

D)0

31.為了暫時關閉計時器,應把該計時器的某個屬性設置為False,這個屬性是()。

A)Visible

B)Timer

C)Enabled

D)Interval

32.為了把一個記錄型變量的內容寫入文件中指定的位置,所使用的語句的格式為()。

A)Get文件號,記錄號,變量名

B)Get文件號,變量名,記錄號

C)Put文件號,變量名,記錄號

D)Put文件號,記錄號,變量名

33.對窗體編寫如下事件過程:

Private Sub Form _MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)If Button =2 Then Print ”AAAAA“ End If End Sub

Private Sub Form _ MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)Print ”BB BBB“ End Sub

程序運行后,如果右擊鼠標,則輸出結果為()。

A)AAAAA B)BBBBB

BBBBB

C)AAAAA D)BBBBB

AAAAA

34.為了在運行時能顯示窗體左上角的控制框(系統菜單),必須()。

A)把窗體的Contro1Box屬性設置為False,其他屬性任意

B)把窗體的ControlBox屬性設置為True,并且把Boder Style屬性設置為1-5

C)把窗體的ControlBox屬性設置為False,同時把BoderStyle屬性調協為非0值

D)把窗體的ControlBox屬性設置為True,同時把BoderStyle屬性設置為0值

35.對窗體編寫如下代碼:

Option Base 1 Private Sub Form_KeyPress(KeyAscii As Integer)a = Array(237,126,87,48,498)m1 = a(1)m2 = 1

If KeyAscii = 13 Then For i =2 To 5 If a(i)>ml Then m1 =a(i)m2 =i End If Next i End If Print m1 Print m2 End Sub

程序運行后,按回車鍵,輸出結果為()。

A)48

B)237

C)498

D)498

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

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

1.設有如下的Visual Basic表達式: 5 * x^2 – 3 * x – 2 * Sin(a)/3 它相當于代數式 [1]。

2.執行下面的程序段后,s的值為 [2]。

s = 5

For i = 2.6 To 4.9 Step 0.6 s = s+1 Next i

3.表達式Fix(-32.68)+Int(-23.02)的值為 [3]。

4.為了在運行時把圖形文件picfile.jpg裝入圖片框Picture1,所使用的語句為 [4]。

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

Private Sub Command1_Click()a = InputBox(”請輸入一個整數“)b = InputBox(”請輸入一個整數“)Print a + b End Sub

程序運行后,單擊命令按鈕,在輸入對話框中分別輸入321和456,輸出結果為 [5]。

6.執行下面的程序段后,b的值為 [6]。

a=300 b=20 a=a+b b=a-b a=a-b

7.以下程序段的輸出結果是 [7]。num=0 &nb sp;

While num<=2 num=num+1 Print num Wend

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

Private Sub Command1_Click()Dim a(1 To 10)Dim p(1 To 3)k=5

For i=1 To 10 a(i)=i Next i

For i=1 To 3 p(i)=a(i*i)Next i

For i=1 To 3 k=k+p(i)*2 Next i Print k End Sub

程序運行后,單擊命令按鈕,輸出結果是 [8]。

9.下面的程序用“冒泡”法將數組a中的10個整數按升序排列,請在 [9]、處將程序補充完整。

Option Base 1

Private Sub Command1_Click()Dim a

a=Array(678,45,324,528,439,387,87,875,273,823)For i= [9] For j= [10]

If a(i)[11] a(j)Then a1=a(i)a(i)=a(j)a(j)=a1 End If Next j Next i

For i=1 To 10 Print a(i)Next i End Sub

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

Function fun(ByVal num As Long)As Long

[10]、[11] Dim k As Long k=1

num=Abs(num)Do While num k=k*(num Mod 10)num=num10 Loop fun=k

End Function

Private Sub Command1_Click()Dim n As Long Dim r As Long

n=InputBox(”請輸入一個數“)n=CLng(n)r=fun(n)Print r End Sub

程序運行后,單擊命令按鈕,在輸入對話框中輸入234,輸出結果為 [12]。

11.如果要將某個菜單項設計為分隔線,則該菜單項的標題應設置為 [13]。

12.假定建立了一個工程,該工程包括兩個窗體,其名稱(Name屬性)分別為Form1和Form2,啟動窗體為Form1。在Form1上畫一個命令按鈕Command1,程序運行后,要求當單擊該命令按鈕時,Form1窗體消失,顯示窗體Form2,請在 [14] 和 [15] 處將程序補充完整。

Private Sub Command1_Click();[14] Form1 Form2.[15] End Sub

2002年9月二級VB筆試試題

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

下列各題A)、B)、C)、D)四個選項中,只有一個選項是正確的,請將正確選項涂寫在答題卡相應位置上,答在試卷上不得分。

(1)在設計階段,當雙擊窗體上的某個控件時,所打開的窗口是()。

A)工程資源管理器窗口

B)工具箱窗口

C)代碼窗口

D)屬性窗口

(2)以下敘述中正確的是()。

A)窗體的Name屬性指定窗體的名稱,用來標識一個窗體

B)窗體的Name屬性的值是顯示在窗體標題欄中的文本

C)可以在運行期間改變對象的Name屬性的值

D)對象的Name屬性值可以為空

(3)剛建立一個新的標準EXE工程后,不在工具箱中出現的控件是()。

A)單選按鈕

B)圖片框

C)通用對話框

D)文本框

(4)設有如下變量聲明

Dim TestDate As Date

為變量TestDate正確賦值的表達方式是()。

A)TextDate=#1/1/200

2# B)TestDate=#“1/1/2002”#

C)TextDate=date(“1/1/2002”)

D)TestDate=Format(“m/d/yy”,“1/1/2002”)

(5)設有如下聲明:

Dim X As Integer

如果Sgn(X)的值為-1,則X的值是()。

A)整數

B)大于0的整數

C)等于0的整數

D)小于0的數

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

Private Sub Command1_Click()

Static X As Integer

Static Y As Integer

Cls

Y=1

Y=Y+5

X=5+X

Print X,Y

End Sub

程序運行時,三次單擊命令按鈕Commandl后,窗體上顯示的結果為()。

A)15 16

B)15 6

C)15 1D)5 6

(7)設a=3,b=5,則以下表達式值為真的是()。

A)a>=b And b>10

B)(a>b)Or(b>0)

C)(a<0)Eqv(b>0)

D)(-3+5>a)And(b>0)

(8)設有語句

x=InputBox(“輸入數值”,“0”,“示例”)

程序運行后,如果從鍵盤上輸入數值10并按回車鍵,則下列敘述中正確的是()。

A)變量X的值是數值10

B)在InputBox對話框標題欄中顯示的是“示例”

C)0是默認值

D)變量X的值是字符串“10”

(9)從鍵盤上輸入兩個字符串,分別保存在變量str1、str2中。確定第二個字符串在第一個字符串中起始位置的函數是()。

A)Left

B)Mid

C)String

D)Instr

(10)設a=“Visual Basic”,下面使b=“Basic”的語句是()。

A)b=Left(a,8,12)

B)b=Mid(a,8,5)

C)b=Rigth(a,5,5)

D)b=Left(a,8,5)

(11)以下能夠觸發文本框Change事件的操作是()。

A)文本框失去焦點

B)文本框獲得焦點

C)設置文本框的焦點

D)改變文本框的內容

(12)在窗體上有一個文本框控件,名稱為TxtTime:一個計時器控件,名稱為Timerl,要求每一秒鐘在文本框中顯示一次當前的時間。程序為:

Private Sub Timer1_()

TxtTime.text=Time

End Sub

在下劃線上應填入的內容是()。

A)Enabled

B)Visible

C)Interval

D)Timer

(13)在窗體上畫兩個單選按鈕,名稱分別為Option1、Option2,標題分別為“宋體”和“黑體”;一個復選框,名稱為Check1,標題為“粗體”;一個文本框,名稱為Text1,Text屬性為“改變文字字體”。要求程序運行時,“宋體”單選按鈕和“粗體”復選框被選中(窗體外觀如下圖),則能夠實現上述要求的語句序列是()。

A)Option1.value=True

B)Option1.Value=True

Check1.Value=False

Check1.Value=True

C)Option2.Value=False D)Option1.Value=True

Check1.Value=True

Check1.Value=1

(14)為了在按下Esc鍵時執行某個命令按鈕的Click事件過程,需要把該命令按鈕的一個屬性設置為True,這個屬性是()。

A)Value

B)Default

C)Cancel

D)Enabled

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

Private Sub Command1_Click()

For I=1 To 4

For J=0 To 1

Print Chr$(65+I);

Next J

Print

Next I

End Sub

程序運行后,如果單擊命令按鈕,則在窗體上顯示的內容是()。

A)BB

B)A

C)B

D)AA

CC

BB

CC

BBB

DDDD

CCC

DDD

CCCC

EEEEE

DDDD

EEEE

DDDDD

(16)圖像框有一個屬性,可以自動調整圖形的大小,以適應圖像框的尺寸,這個屬性是()。

A)Autosize

B)Stretch

C)AutoRedraw

D)Appearance

(17)在窗體上畫兩個名稱分別為Text1、Texte2的文本框和一個名稱為Command1的命令按鈕,然后編寫如下事件過程:

Private Sub Command1_Click()

Dim x As Integer,n As Integer

x=1

n=0

Do While x<20

x=x*3

n=n+1

Loop

Text1.Text=Str(x)

Text2.Text=Str(n)

End Sub

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

A)15和1

B)27和C)195和3

D)600和4

(18)在窗體上畫一個名稱為Text1的文本框和一個名稱為Command1的命令按鈕,然后編寫如下事件過程:

Private Sub Command1_Click()

Dim i As Integer,n As Integer

For I=0 To 50

i=i+3

n=n+1

If i>10 Then xit for

Next

Text1.Text=Str(n)

End Sub

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

A)B)3

D)4

D)5

(19)在窗體上畫一個名稱為Text1的文本框和一個名稱為Command1的命令按鈕,然后編寫如下事件過程:

Private Sub Command1_Click()

Dim array1(10,10)As Integer

Dim i,j As Integer

For i=1 To 3

For j=2 To 4

array1(i,j)=i+j

Next j

Next I

Text1.Text=array1(2,3)+array1(3,4)

End Sub

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

A)12

B)13

C)1D)15

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

Private Sub Command1_Click()

Dim i As Integer,j As Integer

Dim a(10,10)As Integer

For i=1 To 3

For j=1 To 3

a(i,j)=(i-1)*3+j

Print a(i,j);

Next j

Print

Next j

End Sub

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

A)123 B)234 C)147 D)123

246

345

258

456

369 456

369

789

(21)設有如下程序:

Option Base 0

Private Sub Form_Click()

Dim a

Dim i As Integer

a=Array(1,2,3,4,5,6,7,8,9)

For i=0 To 3

Print a(5-i);

Next

End Sub

程序運行后,單擊窗體,則在窗體上顯示的是()。

A)4 3 2 1 B)5 4 3 2 C)6 5 4 3 D)7 6 5 4

(22)下列敘述中正確的是()。

A)在窗體的Form_Load事件過程中定義的變量是全局變量

B)局部變量的作用域可以超出所定義的過程

C)在某個Sub過程中定義的局部變量可以與其它事件過程中定義的局部變量同名,但其作用域只限于該過程

D)在調用過程時,所有局部變量被系統初始化為0或空字符串

(23)在窗體上畫一個命令按鈕,名稱為Command1。程序運行后,如果單擊命令按鈕,則顯示一個輸入對話框,在該對話框中輸入一個整數,并用這個整數作為實參調用函數過程F1。在F1中判斷所輸入的整數是否是奇數,如果是奇數,過程F1返回1,否則返回0。能夠正確實現上述功能的代碼是()。

A)Private Sub Command1_Click()

x=InputBox(“請輸入整數”)

a=F1(Val(x))

Print a

End Sub

Function F1(ByRef b As Integer)

If b Mod 2=0 Then

Return 0

Else

Return 1

End If

End Function

B)Private Sub Command1_Click()

x=InputBox(“請輸入整數”)

a=F1(Val(x))

Print a

End Sub

Function F1(ByRef b As Integer)

If b Mod 2=0 Then

F1=0

Else

F1=1

End If

End Function

C)Private Sub Command1_Click()

x=InputBox(“請輸入整數”)

F1(Val(x))

Print a

End Sub

Function F1(ByRef b As Integer)

If b Mod 2=0 Then

F1=1

Else

F1=0

End If

End Function

D)Private Sub Command1_Click()

x=InputBox(“請輸入整數”)

F1(Val(x))

Print a

End Sub

Function F1(ByRef b As Integer)

If b Mod 2=0 Then

Return 0

Else

Return 1

End If

End Function

(24)在窗體上畫一個名稱為Command1的命令按鈕和一個名稱為Text1的文本框,然后編寫如下程序:

Private Sub Command1_Click()

Dim x,y,z As Integer

x=5

y=7

z=0

Text1.text=“”

Call P1(x,y,z)

Text1.Text=Str(x)

End Sub

Sub P1(ByVal a As Integer,ByVal b As Integer,c As Integer)

c=a+b

End Sub

程序運行后,如果單擊命令按鈕,則在文本框中顯示的內容是()。

A)0

B)12

C)Str(z)

D)沒有顯示

(25)以下敘述中錯誤的是()。

A)如果過程被定義為Static類型,則該過程中的局部變量都是Static類型

B)Sub過程中不能嵌套定義Sub過程

C)Sub過程中可以嵌套調用Sub過程

D)事件過程可以像通用過程一樣由用戶定義過程名

(26)以下敘述中錯誤的是()。

A)在KeyUp和KeyDown事件過程中,從鍵盤上輸入A或a被視作相同的字母(即具有相同的KeyCode)

B)在KeyUp和KeyDown事件過程中,將鍵盤上的“1”和右側小鍵盤上的“1”視作不同的數字(具有不同的KeyCode)

C)KeyPress事件中不能識別鍵盤上某個鍵的按下與釋放

D)KeyPress事件中可以識別鍵盤上某個鍵的按下與釋放

(27)以下敘述中錯誤的是()。

A)在同一窗體的菜單項中,不允許出現標題相同的菜單項

B)在菜單的標題欄中,“&”所引導的字母指明了訪問該菜單項的訪問鍵

C)程序運行過程中,可以重新設置菜單的Visible屬性

D)彈出式菜單也在菜單編輯器中定義

(28)設在菜單編輯器中定義了一個菜單項,名為menu1。為了在運行時隱藏該菜單項,應使用的語句是()。

A)menu1.Enabled=True B)Munu1.Enabled=False

C)Menu1.Visible=True D)Menu1.Visible=False

(29)以下敘述中錯誤的是()。

A)在程序運行時,通用對話框控件是不可見的

B)在同一個程序中,用不同的方法(如ShowOpen或ShowSave等)打開的通用對話框具有不同的作用

C)調用通用對話框控件的ShowOpen方法,可以直接打開在該通用對話框中指定的文件

D)調用通用對話框控件的ShowColor方法,可以打開顏色對話框

(30)在用通用對話框控件建立“打開”或“保存”文件對話框時,如果需要指定文件列表框所列出的文件類型是文本文件(即.txt文件),則正確的描述格式是()。

A)“text(.txt)|(*.txt)” B)“文本文件(.txt)|(.txt)”

C)“text(.txt)||(*.txt)” D)“text(.txt)(*.txt)”

(31)以下敘述中錯誤的是()。

A)一個工程中只能有一個Sub Main過程

B)窗體的Show方法的作用是將指定的窗體裝入內存并顯示該窗體

C)窗體的Hide方法和Unload方法的作用完全相同

D)若工程文件中有多個窗體,可以根據需要指定一個窗體為啟動窗體

(32)以下敘述中錯誤的是()。

A)一個工程中可以包含多個窗體文件

B)在一個窗體文件中用Private定義的通用過程能被其他窗體調用

C)在設計VB程序時,窗體、標準模塊、類模塊等需要分別保存為不同類型的磁盤文件

D)全局變量必須在標準模塊中定義

(33)設在工程中有一個標準模塊,其中定義了如下記錄類型

Type Books

Name As String *10

TelNum As String *20

End Type

在窗體上畫一個名為Command1的命令按鈕。要求當執行事件過程Command1_Click時,在順序文件Person.txt中寫入一條記錄。下列能夠完成該操作的事件過程是()。

A)Private Sub Command1_Click()

Dim B As Books

Open “c:Person.txt”For Output As #1

B.Name=InputBox(“輸入姓名”)

B.TelNum=InputBox(“輸入電話號碼”)

Write #1,B.Name,B.TelNum

Close #1

End Sub

B)Private Sub Command1_Click()

Dim B As Books

Open “c:Person.txt”For Input As #1

B.Name=InputBox(“輸入姓名”)

B.TelNum=InputBox(“輸入電話號碼”)

Print #1,B.Name,B.TelNum

Close #1

End Sub

C)Private Sub Command1_Click()

Dim B As Books

Open “c:Person.txt”For Output As #1

B.Name=InputBox(“輸入姓名”)

B.TelNum=InputBox(“輸入電話號碼”)

Write #1,B

Close #1

End Sub

D)Private Sub Command1_Click()

Open “c:Person.txt”For Input As #1

Name=InputBox(“輸入姓名”)

TelNum=InputBox(“輸入電話號碼”)

Print #1,Name,TelNum

Close #1

End Sub

(34)以下敘述中正確的是()。

A)一個記錄中所包含的各個元素的數據類型必須相同

B)隨機文件中每個記錄的長度是固定的

C)Open命令的作用是打開一個已經存在的文件

D)使用Input #語句可以從隨機文件中讀取數據

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

A)顯示當前驅動器或指定驅動器上的目錄結構

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

C)顯示根目錄下的文件名

D)顯示該路徑下的文件

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

請將每空的正確答案寫在答題卡(1)至(15)的橫線上,答在試卷上不得分。

(1)在窗體上畫兩個標簽,其名稱分別為Label1和Label2,Caption屬性分別為“數值”及空白;然后畫一個名稱為Hscoll1的水平滾動條,其Min的值為0,Max的值為100。程序運行后,如果單擊滾動條兩端的箭頭,則在標簽Lable2中顯示滾動條的值,如圖所示。請在 [1] 和 [2] 處填入適當的內容,將程序補充完整。

Private Sub HScroll1_ [1]()

Labl2.Caption=HScroll1.[2]

End Sub

(2)在窗體上畫一個名稱為Command1、標題為“計算”的命令按鈕;畫兩個文本框,名稱分別為Text1和Text2;然后畫4個標簽,名稱分別為Label1、Label2、Label3和Label4,標題分別為“操作數1”、“操作數2”、“運算結果”和空白;再建立一個含有4個單選按紐的控件數組,名稱為Option1,標題分別為“+”、“-”、“*”和“/”。程序運行后,在Text1、Text2中輸入兩個數值,選中一個單選按鈕后單擊命令按鈕,相應的計算結果顯示在Label4,程序運行情況如圖所示。請在 [3]、[4] 和 [5] 處填入適當的內容,將程序補充完整。

Private Sub Command1_Click()

For i=0 To 3

If [3] =True then

opt=Option1(i).Caption

End If

Next

Select Case [4]

Case”+”

Result=Val(Text1.Text)+Val(Text2.Text)

Case”-”

Result=Val(Text1.Text)-Val(Text2.Text)

Case”*”

Result=Val(Text.Text)*Val(Text2.Text)

Case”/”

Result=Val(Text1.Text)/Val(Text2.Text)

End Select

[5] =Result

End Sub

(3)在窗體上畫一個名稱為Command1的命令按鈕和一個名稱為Text1的文本框。程序運行后,Command1為禁用(灰色)。當向文框中輸入任何字符時,命令按鈕Command1變為可用。請在 [6] 處填入適當的內容,將程序補充完整。

Private Sub Form_Load()

Command1.Enabled=False

End Sub

Private Sub Text1_ [6]()

Command1.Enabled=True

End Sub

(4)在菜單編輯器中建立了一個菜單,名為pmenu,用下面的語句可以把它作為彈出式菜單彈出,請填空。

Form1.[7] Pmenu

(5)以下程序的功能是:從鍵盤上輸入若干個學生的考試分數,當輸入負數時結束輸入,然后輸出其中的最高分數和最低分數。請在 [8] 和 [9] 處填入適當的內容,將程序補充完整。

Private Sub Form_Click()

Dim x As Single,amax As Single,amin As Single

x=InputBox(“Enter a score”)

amax=x

amin=x

Do While [8]

If x>amax Then

Amax=x

End If

If [9]Then

Amin=x

End If

x=InputBox(“Enter a score”)

Loop

Print”Max=”;amax,”Min=”;amin

End Sub

(6)在窗體上畫一個文本框和一個圖片框,然后編寫如下兩個事件過程:

Private Sub Form_Load()

Text1.Text=”計算機”

End Sub

Private Sub Text1_Change()

Picture1.Print“等級考試”

End Sub

程序運行后,在文本框中顯示的內容是 [10],而在圖片框中顯示的內容是 [11]。

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

Function M(x As Integer,y As Integer)As Integer

M=IIf(x>y,x,y)

End Function

Private Sub command1_Click()

Dim a As Integer,b As Integer

a=100

b=200

Print M(a,b)

End Sub

程序運行后,單擊命令按鈕,輸出結果為 [12]。

(8)為了改變計時器控件的時間間隔,應該修改該控件的 [13] 屬性。

(9)在窗體上畫一個名稱為Lable1的標簽和一個名稱為List1的列表框。程序運行后,在列表框中添加若干列表項。當雙擊列表框中的某個項目時,在標簽Label1中顯示所選中的項目,如圖所示。請在 [14] 和 [15] 處填入適當的內容將程序補充完整。

Private Sub Form_load()

List1.AddItem”北京”

List1.AddItem”上海”

List1.AddItem”湖北”

End Sub

Private Sub [14]()

Label1.Caption= [15]

End Sub

2003年4月二級VB筆試試題

一、選擇題((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=”張紅“

s.Dame=”張紅“

(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_C1ick()

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=list1.listlndex 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)顯示當前驅動器或指定驅動器上的某目錄下的文件名

D)顯示根目錄下的文件名

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!的程序是()。

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的標簽,然后編寫如下程序代碼:

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

Labell.Caption=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,標題分別為空白和“共有文件”的標簽。編寫程序,使得驅動器打開一個保存文件的通用對話框。該窗口的標題為“Save”,缺省文件名為“SaveFile”,在“文件類型”欄中顯示*.txt。則能夠滿足上述要求的程序是()。

A)Private Sub Command_C1ick()

Commondialogl.FileName=“Savefile”

Commondialogl.filter=“All Files|*.*|(*.txt)|*.txt|(*.doc).|*.doc”

CommonDialogl.Filterindex=2

CommonDialogl.Dial0g.title=“Save”

CommonDialogl.Action=2

End Sub B)Private Sub Commandl-Click()

CommonDialogl.FileName=“SaveFile”

CommonDiaLogl.Filter=“A11 Files|*.*|(*.txt)|*.txt|*.doc|*.doc”

C0mmonDialogl.FilterIndex=1

CommonDialogl.DialogTitle=“Save”

CommonDialogl.Action=2

End Sub C)Private Sub Cmmandl_C1ick()

COmmonDialogl.FileName=“Save”

CommonDialogl.FiLter=“A11Files|*.*|(*.txt)|*.txt|(*.doc)|*.doc”

CommonDialogl.Filterindex=2

C0mmonDialogl.DialogTitle=“SaveFile”

CommonDialogl.Action=2

End Sub D)Private Sub Commandl_C1ick()

CommonDialogl.FileName=“SaveFile”

CommonDialogl.Filter=“All Files|*.*|(*.txt)|*.txt|(*.doc)|*.doc”

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

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=50R>

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)

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

程序運行后,輸出結果是________。

2003年9月二級VB筆試試題

(考試時間90分鐘,滿分100分)

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

(1)以下敘述中錯誤的是()。

A)Visual Basic 是事件驅動型可視化編程工具

B)Visual Basic應用程序不具有明顯的開始和結束語句

C)Visual Basic工具箱中的所有控件都具有寬度(Width)和高度(Height)屬性

D)Visual Basic中控件的某些屬性只能在運行時設置

(2)以下敘述中錯誤的是()。

A)在工程資源管理器窗口中只能包含一個工程文件及屬于該工程的其他文件

B)以.BAS為擴展名的文件是標準模塊文件

C)窗體文件包含該窗體及其控件的屬性

D)一個工程中可以含有多個標準模塊文件

(3)以下敘述中錯誤的是()。

A)雙擊鼠標可以觸發DblClick事件

B)窗體或控件的事件的名稱可以由編程人員確定

C)移動鼠標時,會觸發MouseMove事件

D)控件的名稱可以由編程人員設定

(4)以下不屬于Visual Basic系統的文件類型是()。

A).frm

B).bat

C).vbg

D).vbp

(5)以下敘述中錯誤的是()。

A)打開一個工程文件時,系統自動裝入與該工程有關的窗體、標準模塊等文件

B)保存Visual Basic程序時,應分別保存窗體文件及工程文件

C)Visual Basic應用程序只能以解釋方式執行

D)事件可以由用戶引發,也可以由系統引發

(6)以下能正確定義數據類型TelBook的代碼是()。

A)Type TelBook

B)Type TelBook

Name As String*10

Name As String*10

TelNum As Integer

TelNum As Integer

End Type

End TelBook

C)Type TelBook

D)Typedef TelBook

Name String*10

Name String*10

TelNum Integer

TelNum Integer

End Type TelBook

End Type

(7)以下聲明語句中錯誤的是()。

A)Const var1=123

B)Dim var2 = 'ABC'

C)DefInt a-z

D)Static var3 As Integer

(8)設窗體上有一個列表框控件List1,且其中含有若干列表項。則以下能表示當前被選中的列表項內容的是()。

A)List1.List

B)List1.ListIndex

C)List1.Index

D)List1.Text

(9)程序運行后,在窗體上單擊鼠標,此時窗體不會接收到的事件是()。

A)MouseDown B)MouseUp

C)Load

D)Click

(10)設a=10,b=5,c=1,執行語句Print a > b > c后,窗體上顯示的是()。

A)True

B)False

C)

1D)出錯信息

(11)如果要改變窗體的標題,則需要設置的屬性是()。

A)Caption

B)Name

C)BackColor D)BorderStyle

(12)以下能判斷是否到達文件尾的函數是()。

A)BOF

B)LOC

C)LOF

D)EOF

(13)如果一個工程含有多個窗體及標準模塊,則以下敘述中錯誤的是()。

A)如果工程中含有Sub Main過程,則程序一定首先執行該過程

B)不能把標準模塊設置為啟動模塊

C)用Hide方法只是隱藏一個窗體,不能從內存中清除該窗體

D)任何時刻最多只有一個窗體是活動窗體

(14)窗體的MouseDown事件過程

Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

有4個參數,關于這些參數,正確的描述是()。

A)通過Button參數判定當前按下的是哪一個鼠標鍵

B)Shift參數只能用來確定是否按下Shift鍵

C)Shift參數只能用來確定是否按下Alt和Ctrl鍵

D)參數x,y用來設置鼠標當前位置的坐標

(15)設組合框Combo1中有3個項目,則以下能刪除最后一項的語句是()。

A)Combo1.RemoveItem Text

B)Combo1.RemoveItem 2

C)Combo1.RemoveItem 3

D)Combo1.RemoveItem Combo1.Listcount

(16)以下關于焦點的敘述中,錯誤的是()。

A)如果文本框的TabStop屬性為False,則不能接收從鍵盤上輸入的數據

B)當文本框失去焦點時,觸發LostFocus事件

C)當文本框的Enabled屬性為False時,其Tab順序不起作用

D)可以用TabIndex屬性改變Tab順序

(17)如果要在菜單中添加一個分隔線,則應將其Caption屬性設置為()。

A)=

B)*

C)&

D)-

(18)執行語句Open “Tel.dat” For Random As #1 Len = 50后,對文件Tel.dat中的數據能夠執行的操作是()。

A)只能寫,不能讀

B)只能讀,不能寫

C)既可以讀,也可以寫

D)不能讀,不能寫

(19)在窗體上畫一個名稱為Command1的命令按鈕和兩個名稱分別為Text1、Text2的文本框,然后編寫如下事件過程:

Private Sub Command1_Click()

n = Text1.Text

Select Case n

Case 1 To 20

x = 10

Case 2, 4, 6

x = 20

Case Is < 10

x = 30

Case 10

x = 40

End Select

Text2.Text = x

End Sub

程序運行后,如果在文本框Text1中輸入10,然后單擊命令按鈕,則在Text2中顯示的內容是()。

A)10

B)20

C)30

D)40

(20)設有以下循環結構

Do

循環體

Loop While <條件>

則以下敘述中錯誤的是()。

A)若“條件”是一個為0的常數,則一次也不執行循環體

B)“條件”可以是關系表達式、邏輯表達式或常數

C)循環體中可以使用Exit Do語句

D)如果“條件”總是為True,則不停地執行循環體

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

Private Sub Command1_Click()

Dim num As Integer

num = 1

Do Until num > 6

Print num;

num = num + 2.4

Loop

End Sub

程序運行后,單擊命令按鈕,則窗體上顯示的內容是()。

A)1 3.4 5.8

B)1 3 5

C)1 4 7

D)無數據輸出

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

Private Sub Command1_Click()

Dim a As Integer, s As Integer

a = 8

s = 1

Do

s = s + a

a = a-1

Loop While a <= 0

Print s;a

End Sub

程序運行后,單擊命令按鈕,則窗體上顯示的內容是()。

A)7 9

B)34 0

C)9 7

D)死循環

(23)設有如下通用過程:

Public Function f(x As Integer)

Dim y As Integer

x = 20

y = 2

f = x * y

End Function

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

Private Sub Command1_Click()

Static x As Integer

x = 10

y=5

y = f(x)

Print x;y

End Sub

程序運行后,如果單擊命令按鈕,則在窗體上顯示的內容是()。

A)10 5

B)20 5

C)20 40

D)10 40

(24)設有如下通用過程:

Public Sub Fun(a(), ByVal x As Integer)

For i = 1 To 5

x = x + a(i)

Next

End Sub

在窗體上畫一個名稱為Text1的文本框和一個名稱為Command1的命令按鈕,然后編寫如下的事件過程:

Private Sub Command1_Click()

Dim arr(5)As Variant

For i = 1 To 5

arr(i)= i

Next

n = 10

Call Fun(arr(), n)

Text1.Text = n

End Sub

程序運行后,單擊命令按鈕,則在文本框中顯示的內容是()。

A)10

B)1C)25

D)24

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

Option Base 1

Private Sub Command1_Click()

d = 0

c = 10

x = Array(10, 12, 21, 32, 24)

For i = 1 To 5

If x(i)> c Then

d = d + x(i)

c = x(i)

Else

d = d-c

End If

Next i

Print d

End Sub

程序運行后,如果單擊命令按鈕,則在窗體上輸出的內容為()。

A)89

B)99

C)2D)77

(26)在窗體上畫兩個滾動條,名稱分別為Hscroll1、Hscroll2;六個標簽,名稱分別為Label1、Label2、Label3、Label4、Label5、Label6,其中標簽Label 4~ Label6分別顯示“A”、“B”、“A*B”等文字信息,標簽Label1、Label2分別顯示其右側的滾動條的數值,Label3 顯示A*B的計算結果。如圖所示。當移動滾動框時,在相應的標簽中顯示滾動條的值。當單擊命令按鈕“計算”時,對標簽Label1、Label2中顯示的兩個值求積,并將結果顯示在Label3中。以下不能實現上述功能的事件過程是()。

A)Private Sub Command1_Click()

Label3.Caption = Str(Val(Label1.Caption)*Val(Label2.Caption))

End Sub

B)Private Sub Command1_Click()

Label3.Caption = HScroll1.Value * HScroll2.Value

End Sub

C)Private Sub Command1_Click()

Label3.Caption = HScroll1 * HScroll2

End Sub

D)Private Sub Command1_Click()

Label3.Caption = HScroll1.Text * HScroll2.Text

End Sub

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

Private Sub Command1_Click()

For n = 1 To 20

If n Mod 3 <> 0 Then m = m + n 3

Next n

Print n

End Sub

程序運行后,如果單擊命令按鈕,則窗體上顯示的內容是()。

A)15

B)18

C)D)24

(28)在窗體上畫一個名稱為Text1的文本框,并編寫如下程序:

Private Sub Form_Load()Show Text1.Text = “" Text1.SetFocus End Sub Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)Print ”程序設計“ End Sub Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)Print ”Visual Basic“;End Sub 程序運行后,如果按”A“鍵,然后單擊窗體,則在窗體上顯示的內容是(A)Visual Basic

B)程序設計

C)A程序設計

D)Visual Basic程序設計

(29)設有如下程序:

Private Sub Command1_Click()Dim sum As Double, x As Double sum = 0 n = 0 For i = 1 To 5 x = n / i n = n + 1 sum = sum + x Next End Sub 該程序通過For循環計算一個表達式的值,這個表達式是()。

A)1+1/2+ 2/3+3/4+4/5

B)1+1/2+2/3+3/4 C)1/2+2/3+3/4+4/

5D)1+1/2+1/3+1/4+1/5

(30)以下有關數組定義的語句序列中,錯誤的是()。

A)Static arr1(3)

arr1(1)= 100

arr1(2)= ”Hello“

arr1(3)= 123.45 B)Dim arr2()As Integer

Dim size As Integer

Private Sub Command2_Click()

size = InputBox(”輸入:“)

ReDim arr2(size)......

End Sub。)

C)Option Base 1

Private Sub Command3_Click()

Dim arr3(3)As Integer

......

End Sub

D)Dim n As Integer

Private Sub Command4_Click()

Dim arr4(n)As Integer

......

End Sub

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

(1)執行下面的程序段后,i的值為 〖1〗,s的值為 〖2〗。

s = 2

For i = 3.2 To 4.9 Step 0.8

s = s + 1

Next i

(2)把窗體的KeyPreview屬性設置為True,然后編寫如下兩個事件過程:

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)

Print Chr(KeyCode)

End Sub

Private Sub Form_KeyPress(KeyAscii As Integer)

Print Chr(KeyAscii)

End Sub

程序運行后,如果直接按鍵盤上的”A“鍵(即不按住Shift鍵),則在窗體上輸出的字符分別是 〖3〗 和 〖4〗。

(3)在窗體上畫一個標簽(名稱為Label1)和一個計時器(名稱為Timer1),然后編寫如下幾個事件過程:

Private Sub Form_Load()

Timer1.Enabled = False

Timer1.Interval = 〖5〗

End Sub

Private Sub Form_Click()

Timer1.Enabled = 〖6〗

End Sub

Private Sub Timer1_Timer()

Label1.Caption = 〖7〗

End Sub

程序運行后,單擊窗體,將在標簽中顯示當前時間,每隔1秒鐘變換一次(見圖)。請填空。

——————————————————————

14:54:41

——————————————————————

(4)在窗體上畫一個文本框、一個標簽和一個命令按鈕,其名稱分別為Text1、Label1和Command1,然后編寫如下兩個事件過程:

Private Sub Command1_Click()

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

Text1.Text = S$

End Sub

Private Sub Text1_Change()

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

End Sub

程序運行后,單擊命令按鈕,將顯示一個輸入對話框,如果在該對話框中輸入字符串”VisualBasic“,則在標簽中顯示的內容是 〖8〗。

(5)在窗體上畫一個列表框、一個命令按鈕和一個標簽,其名稱分別為List1、Command1和Label1,通過屬性窗口把列表框中的項目設置為:”第一個項目“、”第二個項目“、”第三個項目“、”第四個項目“。程序運行后,在列表框中選擇一個項目,然后單擊命令按鈕,即可將所選擇的項目刪除,并在標簽中顯示列表框當前的項目數,運行情況如圖所示(選擇”第三個項目“的情況)。下面是實現上述功能的程序,請填空。

Private Sub Command1_Click()

If List1.ListIndex >= 〖9〗 Then

List1.RemoveItem 〖10〗

Label1.Caption = 〖11〗

Else

MsgBox ”請選擇要刪除的項目“

End If

End Sub

—————————————————————

第一個項目

第二個項目 COMMAND1

第三個項目 3

—————————————————————

(6)設有程序:

Option Base 1

Private Sub Command1_Click()

Dim arr1, Max as Integer

arr1 = Array(12, 435, 76, 24, 78, 54, 866, 43)

(資料來源:東方教育網 http://www.tmdps.cn)

〖12〗 = arr1(1)

For i = 1 To 8

If arr1(i)> Max Then 〖13〗

Next i

Print ”最大值是: “;Max

End Sub

以上程序的功能是:用Array函數建立一個含有8個元素的數組,然后查找并輸出該數組中元素的最大值。請填空。

(7)以下程序的功能是:把當前目錄下的順序文件smtext1.txt的內容讀入內存,并在文本框Text1中顯示出來。請填空。

Private Sub Command1_Click()

Dim inData As String

Text1.Text = ”“

Open ”.smtext1.txt“ 〖14〗 As #1

Do While 〖15〗

Input #1, inData

Text1.Text = Text1.Text & inData

Loop

Close #1

End Sub

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

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

下列各題 A)、B)、C)、D)四個選項中,只有一個選項是正確的,請將正確選項涂寫在答題卡相應位置上,答在試卷上不得分。

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

Private Sub Command1_Click()

Move 500,500

End Sub

程序運行后,單擊命令按鈕,執行的操作為()。

A)命令按鈕移動到距窗體左邊界、上邊界各500的位置

B)窗體移動到距屏幕左邊界、上邊界各500的位置

C)命令按鈕向左、上方向各移動500

D)窗體向左、上方向各移動500

(2)在窗體上有若干控件,其中有一個名稱為Text1的文本框。影響Text1的Tab順序的屬性是()。

A)TabStop

B)Enabled

C)Visible

D)TabIndex

(3)以下定義數組或給數組元素賦值的語句中,正確的是()。

(4)在窗體上畫一個名稱為List1的列表框,為了對列表框中的每個項目都能進行處理,應使用的循環語句為()。

A)For i=0 To List1.ListCount-1

??

Next

B)For i=0 To ListCount-1

??

Next

C)For i=1 To List1.listCount

??

Next

D)For i=1 To ListCount

??

Next

(5)以下Case語句中錯誤的是()。

A)Case 0 To 10

B)Case Is>10

C)Case Is>10 And Is<50

D)Case 3,5,Is>10

(6)以下關于圖片框控件的說法中,錯誤的是()。

A)可以通過Print方法在圖片框中輸出文本

B)清空圖片框控件中圖形的方法之一是加載一個空圖形

C)圖片框控件可以作為容器使用

D)用Stretch屬性可以自動調整圖片框中圖形的大小

(7)執行語句s=Len(Mid(”VisualBasic“,1,6))后,s的值是()。

A)Visual

B)Basic

C)6

D)11

(8)以下敘述中錯誤的是()。

A)下拉式菜單和彈出式菜單都用菜單編輯器建立

B)在多窗體程序中,每個窗體都可以建立自己的菜單系統

C)除分隔線外,所有菜單項都能接收Click事件

D)如果把一個菜單項的Enabled屬性設置為False,則該菜單項不可見

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

Private Sub Command1_Click()

a = 12345

Print Format$(a, ”000.00“)

End Sub

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

A)123.45

B)12345.00

C)12345

D)00123.45

(10)以下敘述中錯誤的是()。

A)一個工程可以包括多種類型的文件

B)Visual Basic應用程序既能以編譯方式執行,也能以解釋方式執行

C)程序運行后,在內存中只能駐留一個窗體

D)對于事件驅動型應用程序,每次運行時的執行順序可以不一樣

(11)以下關于函數過程的敘述中,正確的是()。

A)函數過程形參的類型與函數返回值的類型沒有關系

B)在函數過程中,過程的返回值可以有多個

C)當數組作為函數過程的參數時,既能以傳值方式傳遞,也能以傳址方式傳遞

D)如果不指明函數過程參數的類型,則該參數沒有數據類型

(12)以下關于變量作用域的敘述中,正確的是()。

A)窗體中凡被聲明為Private的變量只能在某個指定的過程中使用

B)全局變量必須在標準模塊中聲明

C)模塊級變量只能用Private關鍵字聲明

D)Static類型變量的作用域是它所在的窗體或模塊文件

(13)確定一個控件在窗體上的位置的屬性是()。

A)Width和Height

B)Width或Height

C)Top和Left

D)Top或Left

(14)在窗體上畫一個名稱為Text1的文本框和一個名稱為Command1的命令按鈕,然后編寫如下事件過程

Private Sub Command1_Click()

Text1.Text = ”Visual“

Me.Text1 = ”Basic“

Text1 = ”Program“

End Sub

程序運行后,如果單擊命令按鈕,則在文本框中顯示的是()。

A)Visual

B)Basic

C)Program

D)出錯

(15)以下關系表達式中,其值為False的是()。

A)”ABC“>”AbC“

B)”the“<>”they“

C)”VISUAL“=UCase(”Visual“)

D)”Integer“>”Int“

(16)語句Print 5/4*65 Mod 2的輸出結果是()。

A)0

B)1

C)2

D)3

(17)在窗體上畫一個文本框、一個標簽和一個命令按鈕,其名稱分別為Text1Label1和Command1,然后編寫如下兩個事件過程:()。

Private Sub Command1_Click()

strText = InputBox(”請輸入“)

Text1.Text = strText

End Sub

Private Sub Text1_Change()

Label1.Caption = Right(Trim(Text1.Text), 3)

End Sub A)空

B)abcdef C)abc D)def

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

Private Sub Command1_Click()

x =-5

If Sgn(x)Then

y = Sgn(x ^ 2)

Else

y = Sgn(x)

End If

Print y

End Sub

程序運行后,單擊命令按鈕,窗體上顯示的是()。A)-5 B)25 C)1 D)-1

(19)一個工程中含有窗體Form1、Form2和標準模塊Model1,如果在Form1中有語句Pubilc X As Integer,在Model1中有語句Pubilc Y As Integer,則以下敘述中正確的是()。A)變量X、Y的作用域相同

B)Y的作用域是Model1 C)在Form1中可以直接使用X D)在Form2中可以直接使用X和Y

(20)在窗體上畫一個名稱為Drive1的驅動器列表框,一個名稱為Dir1的目錄列表框。當改變當前驅動器時,目錄列表框應該與之同步改變。設置兩個控件同步的命令放在一個事件過程中,這個事件過程是()。A)Drive1_Change B)Drive1_Click C)Dir1_Click D)Dir1_Change

(21)在窗體上畫一個命令按鈕(其NAME屬性為Command1),然后編寫如下代碼:

Option Base 1

Private Sub Command1_Click()

Dim a

s = 0

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

j = 1

For i = 4 To 1 Step-1

s = s + a(i)* j

j = j * 10

Next i

Print s

End Sub

運行上面的程序,單擊命令按鈕,其輸出結果是()。A)4321 B)1234 C)34 D)12

(22)在窗體上畫一個名稱為Text1的文本框,要求文本框只能接收大寫字母的輸入。以下能實現該操作的事件過程是()。

A)Private Sub Text1_KeyPress(KeyAscii As Integer)

If KeyAscii < 65 Or KeyAscii > 90 Then

MsgBox ”請輸入大寫字母“

KeyAscii = 0

End If

End Sub

B)Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)

If KeyCode < 65 Or KeyCode > 90 Then

MsgBox ”請輸入大寫字母“

KeyCode = 0

End If

End Sub

C)Private Sub Text1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

If Asc(Text1.Text)< 65 Or Asc(Text1.Text)> 90 Then

MsgBox ”請輸入大寫字母“

End If

End Sub

D)Private Sub Text1_Change()

If Asc(Text1.Text)> 64 And Asc(Text1.Text)< 91 Then

MsgBox ”請輸入大寫字母“

End If

End Sub

(23)假定在窗體(名稱為Form1)的代碼窗口中定義如下記錄類型:

Private Type animal

AnimalName As String*20

AColor As String*10

End Type

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

Private Sub Command1_Click()

Dim rec As animal

Open ”c:vbTest.dat“ For Random As #1 Len = Len(rec)

rec.animalName = ”Cat“

rec.aColor = ”White“

Put #1, , rec

Close #1

End Sub

則以下敘述中正確的是()。

A)記錄類型animal不能在Form1中定義,必須在標準模塊中定義 B)如果文件c:vbTest.dat不存在,則Open命令執行失敗

C)由于Put命令中沒有指明記錄號,因此每次都把記錄寫到文件的末尾 D)語句“Put #1, , rec”將animal類型的兩個數據元素寫到文件中

(24)在窗體上畫一個名稱為Text1的文本框,一個名稱為Command1的命令按鈕,然后編寫如下事件過程和通用過程:

Private Sub Command1_Click()

n = Val(Text1.Text)

If n2 = n/2 Then

f = f1(n)

Else

f = f2(n)

End If

Print f;n

End Sub

Public Function f1(ByRef x)

x=x*x

f1=x+x

End Function

Public Function f2(ByVal x)

x=x*x

f2=x+x+x

End Function

程序運行后,在文本框中輸入6,然后單擊命令按鈕,窗體上顯示的是()。A)72 36 B)108 36 C)72 6 D)108 6

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

Private Sub Command1_Click()

c = 1234

c1 = Trim(Str(c))

For i = 1 To 4

Print

Next

End Sub

程序運行后,單擊命令按鈕,要求在窗體上顯示如下內容

123

1234

則在下劃線處應填入的內容為()。A)Right(c1,i)B)Left(c1,i)C)Mid(c1,i,1)D)Mid(c1,i,i)

(26)在窗體上畫一個名稱為Command1的命令按鈕和一個名稱為Text1的文本框,然后編寫如下事件過程:

Private Sub Command1_Click()

n = Val(Text1.Text)

For i = 2 To n

For j = 2 To sqr(i)

If i Mod j = 0 Then Exit For

Next j

If j > Sqr(i)Then Print i

Next i

End Sub

該事件過程的功能是()。A)輸出n以內的奇數 B)輸出n以內的偶數 C)輸出n以內的素數

D)輸出n以內能被j整除的數

(27)在以下描述中正確的是()。

A)標準模塊中的任何過程都可以在整個工程范圍內被調用

B)在一個窗體模塊中可以調用在其他窗體中被定義為Public的通用過程 C)如果工程中包含Sub Main過程,則程序將首先執行該過程

D)如果工程中不包含Sub Main過程,則程序一定首先執行第一個建立的窗體

(28)在窗體上畫一個名稱為Command1的命令按鈕,然后編寫如下通用過程和命令按鈕的事件過程:

Private Function f(m As Integer)

If m Mod 2 = 0 Then

f = m

Else

f = 1

End If

End Function

Private Sub Command1_Click()

Dim i As Integer

s = 0

For i = 1 To 5

s = s + f(i)

Next

Print s

End Sub

程序運行后,單擊命令按鈕,在窗體上顯示的是()。A)11 B)10 C)9 D)8

(29)在窗體上畫一個名稱為Text1的文本框和一個名稱為Command1的命令按鈕,然后編寫如下事件過程:

Private Sub Command1_Click()

Dim array1(10, 10)As Integer

Dim i As Integer, j As Integer

For i = 1 To 3

For j = 2 To 4

array1(i, j)= i + j

Next j

Next i

Text1.Text = array1(2, 3)+ array1(3, 4)

End Sub

程序運行后,單擊命令按鈕,在文本框中顯示的值是()。A)15 B)14 C)13 D)12

(30)在窗體上畫四個文本框(如圖所示),并用這四個文本框建立一個控件數組,名稱為Text1(下標從0開始,自左至右順序增大),然后編寫如下事件過程:

Private Sub Command1_Click()

For Each TextBox In Text1

Text1(i)= Text1(i).Index

i = i + 1

Next

End Sub

程序運行后,單擊命令按鈕,四個文本框中顯示的內容分別為()。A)0 1 2 3 B)1 2 3 4 C)0 1 3 2 D)出錯信息

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

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

(1)Visual Basic應用程序中標準模塊文件的擴展名是【1】。

(2)在菜單編輯器中建立一個菜單,其主菜單項的名稱為mnuEdit,Visible屬性為False,程序運行后,如果用鼠標右鍵單擊

窗體,則彈出與mnuEdit相應的菜單。以下是實現上述功能的程序,請填空。

Private Sub Form 【2】(Button As Integer, Shift As Integer, X As Single, Y As Single)

If Button=2 Then

【3】 mnuEdit

End If

End Sub

(3)為了使計時器控件Timer1每隔0.5秒觸發一次Timer事件,應將Timer1控件的【4】屬性設置為【5】。

(4)與數學表達式 對應的Visual Basic表達式是【6】。

(5)將C盤根目錄下的圖形文件moon.jpg裝入圖片框Picture1的語句是【7】。

(6)在窗體上畫一個名稱為Text1的文本框,然后畫三個單選按鈕,并用這三個單選按鈕建立一個控件數組,名稱為

Option1,程序運行后,如果單擊某個單選按鈕,則文本框中的字體將根據所選擇的單選按鈕切換,如圖所示,請填空。

Private Sub Option1_Click(Index As Integer)

Select Case 【8】

Case 0

a = ”宋體“

Case 1

a = ”黑體“

Case 2

a = ”楷體_GB2312“

End Select

text1.【9】 =a

End Sub

(7)在窗體上畫兩個組合框,其名稱分別為Combo1、Combo2,然后畫兩個標簽,名稱分別為Label1、Label2,如圖所示,程

序運行后,如果在某個組合框中選擇一個項目,則把所選中的項目在其下面的標簽中顯示出來。請填空。

Private Sub Combo1_Click()

Call ShowItem(Combo1, Label1)

End Sub

Private Sub Combo2_Click()

Call ShowItem(Combo2, Label2)

End Sub

Public Sub ShowItem(tmpCombo As ComboBox, tmpLabel As Label)

【10】.Caption =【11】.Text

End Sub

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

Private Sub Command1_Click()

n = 5

f = 1

s = 0

For i = 1 To n

f = f【12】

s = s + f

Next

Print s

End Sub

該事件過程的功能是計算的值。請填空。

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

Option Base 1

Private Sub Command1_Click()

Dim a(10)As Integer

For i = 1 To 10

a(i)= i

Next

Call swap(【13】)

For i = 1 To 10

Print a(i);

Next

End Sub

Sub swap(b()As Integer)

n = 【14】

For i = 1 To n / 2

t = b(i)

b(i)= b(n)

b(n)= t

【15】

Next

End Sub

上述程序的功能是,通過調用過程swap,調換數組中數值的存放位置,即a(1)與a(10)的值互換,a(2)與a(9)的值互換,??,a(5)與a(6)的值互換。請填空。

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

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

(1)設窗體上有一個文本框,名稱為text1,程序運行后,要求該文本框不能接受鍵盤輸入,但能輸出信息,以下屬性設置正確的是:()。A)text1.maxlength=0 B)text1.enabled=flase C)text1.visible=flase D)text1.width=0

(2)以下能在窗體Form1的標題欄中顯示“VisualBasic窗體”的語句是()。A)Form1.Name=“VisualBasic窗體” B)Form1.Title=“VisualBasic窗體” C)Form1.Caption=“VisualBasic窗體” D)Form1.Text=“VisualBasic窗體”

(3)在窗體上畫一個名稱為Text1的文本框,然后畫一個名稱為HScroll1的滾動條,其Min和Max屬性分別為0和100。程序運行后,如果移動滾動框,則在文本框中顯示滾動條的當前值,如圖所示:

以下能實現上述操作的程序段是()。A)Private Sub HScroll_Change()Text1.Text=HScroll1.value End Sub B)Private Sub HScroll_Click()Text1.Text=HScroll1.value End Sub C)Private Sub HScroll_Change()Text1.Text=HScroll.Caption D)Private Sub HScroll_Click()Text1.Text=HScroll.Caption End Sub

(4)設菜單中有一個菜單項為”Open“。若要為該菜單命令設計訪問鍵,即按下Alt及字母O時,能夠執行”Open“命令,則在菜單編輯器中設置“Open”命令的方式是()。A)把Caption屬性設置為&Open B)把Caption屬性設置為O&pen C)把Name屬性設置為&Open D)把Name屬性設置為O&pen

(5)在窗體上畫一個名稱為Command1的命令按鈕,然后編寫如下事件過程: Private Sub Command1_Click()x=InputBox(“Input”)Select Case x Case 1,3 Print “分支 1” Case Is >4 Print “分支 2” Case Else Print “Else 分支 ” End Select End Sub 程序運行后,如果在輸入對話框中輸入2,則窗體上顯示的是()。A)分支1 B)分支2 C)Else分支

D)程序出錯

(6)以下關于MsgBox的敘述中,錯誤的是()。A)MsgBox函數返回一個整數

第三篇:全國計算機二級VB考試上機考點與常用算法

全國計算機二級VB考試上機考點與常用算法

一、上機考點

由于上機考試的方式和主要考點沒有很大變化,因此可以通過分析歷屆上機考題來歸納總結上機考試考核的重點,我們下面來介紹近幾年二級Visual Basic上機考試所考知識點的分布情況。

(1)對象及其操作:控件的畫法、基本操作及控件值。

(2)數據類型及其運算:涉及到關系運算符、算術運算符、邏輯運算符及常用內部函數等知識點。

(3)數據輸入、輸出:窗體輸出與Print方法,使用InputBox函數。

(4)常用標準控件:文本框、列表框、圖形框、復選框、計時器、滾動條等控件的屬性、事件和方法。

(5)控制結構:選擇結構、For循環控制結構。(6)數組:數組的定義。

(7)菜單與對話框:用菜單編輯器建立菜單。

(8)鍵盤與鼠標事件過程:鍵盤的KeyPress事件、鼠標事件。(9)數據文件:順序文件的讀操作、順序文件的寫操作。

二、常用算法

熟練地掌握算法原理、編程思想和代碼實現,就能夠做到舉一反三,輕松備考,順利過關。

1.累加與連乘

基本思想:設置初值,循環計算。擴展:

(1)計算指定范圍內某一個數的倍數之和。(2)計算某范圍內所有數的乘積。(3)求某一個數列的和。2.生成N個不同的隨機數

基本思想:將生成的數送入一個數組,每生成一個數后與數組中已有的數比較,如相同則丟棄,重新生成可使用語句Exit For。

3.求素數、極值

求素數基本思想:素數的意義;實現方法:雙重循環,外循環判斷每一個數,內循環判斷能否被某數整除。

求極值基本思想:設第一個數為極值數,然后進入循環與其比較,超過則替換。4.排序

(1)選擇法:每次先找出最小數所在的F標,排序結束后,交換最小數的位置。(2)冒泡法:兩兩比較后交換。

(3)合并法:將兩個有序的數組合并成一個仃序的數組。兩個數組中的數兩兩比較,小者放入目標數組,直到。個數組為窄。

(4)插入法:每輸入或生成一個數馬上插入到數組中使其有序。

站長提醒廣大考生:下面的138道題目,在二級考試中命中率極高。

一、選擇題

(1)下面敘述正確的是(C)A.算法的執行效率與數據的存儲結構無關 B.算法的空間復雜度是指算法程序中指令(或語句)的條數 C.算法的有窮性是指算法必須能在執行有限個步驟之后終止 D.以上三種描述都不對

(2)以下數據結構中不屬于線性數據結構的是(C)A.隊列 B.線性表 C.二叉樹 D.棧

(3)在一棵二叉樹上第5層的結點數最多是(B)注:由公式2k-1得 A.8 B.16 C.32 D.15(4)下面描述中,符合結構化程序設計風格的是(A)A.使用順序、選擇和重復(循環)三種基本控制結構表示程序的控制邏輯 B.模塊只有一個入口,可以有多個出口 C.注重提高程序的執行效率 D.不使用goto語句

(5)下面概念中,不屬于面向對象方法的是(D)注:P55-58 A.對象 B.繼承 C.類 D.過程調用

(6)在結構化方法中,用數據流程圖(DFD)作為描述工具的軟件開發階段是(B)A.可行性分析 B.需求分析 C.詳細設計 D.程序編碼(7)在軟件開發中,下面任務不屬于設計階段的是(D)A.數據結構設計 B.給出系統模塊結構

C.定義模塊算法 D.定義需求并建立系統模型(8)數據庫系統的核心是(B)A.數據模型 B.數據庫管理系統 C.軟件工具 D.數據庫(9)下列敘述中正確的是(C)A.數據庫是一個獨立的系統,不需要操作系統的支持 B.數據庫設計是指設計數據庫管理系統C.數據庫技術的根本目標是要解決數據共享的問題 D.數據庫系統中,數據的物理結構必須與邏輯結構一致

(10)下列模式中,能夠給出數據庫物理存儲結構與物理存取方法的是(A)注:P108 A.內模式 B.外模式 C.概念模式 D.邏輯模式(11)算法的時間復雜度是指(C)A.執行算法程序所需要的時間 B.算法程序的長度 C.算法執行過程中所需要的基本運算次數 D.算法程序中的指令條數(12)算法的空間復雜度是指(D)A.算法程序的長度 B.算法程序中的指令條數 C.算法程序所占的存儲空間 D.算法執行過程中所需要的存儲空間

(13)設一棵完全二叉樹共有699個結點,則在該二叉樹中的葉子結點數為(B)注:利用公式n=n0+n1+n2、n0=n2+1和完全二叉數的特點可求出 A.349 B.350 C.255 D.351(14)結構化程序設計主要強調的是(B)A.程序的規模 B.程序的易讀性

C.程序的執行效率 D.程序的可移植性

(15)在軟件生命周期中,能準確地確定軟件系統必須做什么和必須具備哪些功能的階段是(D)注:即第一個階段

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

(16)數據流圖用于抽象描述一個軟件的邏輯模型,數據流圖由一些特定的圖符構成。下列圖符名標識的圖符不屬于數據流圖合法圖符的是(A)注:P67 A.控制流 B.加工 C.數據存儲 D.源和潭

(17)軟件需求分析階段的工作,可以分為四個方面:需求獲取、需求分析、編寫需求規格說明書以及(B)注:P66 A.階段性報告 B.需求評審 C.總結 D.都不正確(18)下述關于數據庫系統的敘述中正確的是(A)A.數據庫系統減少了數據冗余 B.數據庫系統避免了一切冗余

C.數據庫系統中數據的一致性是指數據類型的一致 D.數據庫系統比文件系統能管理更多的數據

(19)關系表中的每一橫行稱為一個(A)A.元組 B.字段 C.屬性 D.碼

(20)數據庫設計包括兩個方面的設計內容,它們是(A)A.概念設計和邏輯設計 B.模式設計和內模式設計

C.內模式設計和物理設計 D.結構特性設計和行為特性設計(21)下列敘述中正確的是(A)A.線性表是線性結構 B.棧與隊列是非線性結構 C.線性鏈表是非線性結構 D.二叉樹是線性結構(22)下列關于棧的敘述中正確的是(D)A.在棧中只能插入數據 B.在棧中只能刪除數據 C.棧是先進先出的線性表 D.棧是先進后出的線性表(23)下列關于隊列的敘述中正確的是(C)A.在隊列中只能插入數據 B.在隊列中只能刪除數據

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

(24)對建立良好的程序設計風格,下面描述正確的是(A)注:P48 A.程序應簡單、清晰、可讀性好 B.符號名的命名要符合語法 C.充分考慮程序的執行效率 D.程序的注釋可有可無(25)下面對對象概念描述錯誤的是(A)注:P55 A.任何對象都必須有繼承性 B.對象是屬性和方法的封裝體 C.對象間的通訊靠消息傳遞 D.操作是對象的動態性屬性(26)下面不屬于軟件工程的3個要素的是(D)注:P62 A.工具 B.過程 C.方法 D.環境

(27)程序流程圖(PFD)中的箭頭代表的是(B)注:P81 A.數據流 B.控制流 C.調用關系 D.組成關系

(28)在數據管理技術的發展過程中,經歷了人工管理階段、文件系統階段和數據庫系統階段。其中數據獨立性最高的階段是(A)A.數據庫系統 B.文件系統 C.人工管理 D.數據項管理(29)用樹形結構來表示實體之間聯系的模型稱為(B)A.關系模型 B.層次模型 C.網狀模型 D.數據模型(30)關系數據庫管理系統能實現的專門關系運算包括(B)A.排序、索引、統計 B.選擇、投影、連接 C.關聯、更新、排序 D.顯示、打印、制表

(31)算法一般都可以用哪幾種控制結構組合而成(D)注:P3 A.循環、分支、遞歸 B.順序、循環、嵌套 C.循環、遞歸、選擇 D.順序、選擇、循環

(32)數據的存儲結構是指(B)注:P13,要牢記

A.數據所占的存儲空間量 B.數據的邏輯結構在計算機中的表示 C.數據在計算機中的順序存儲方式 D.存儲在外存中的數據(33)設有下列二叉樹:圖見書P46 對此二叉樹中序遍歷的結果為(B)A.ABCDEF B.DBEAFC C.ABDECF D.DEBFCA(34)在面向對象方法中,一個對象請求另一對象為其服務的方式是通過發送(D)注:P56 A.調用語句 B.命令 C.口令 D.消息

(35)檢查軟件產品是否符合需求定義的過程稱為(A)注:P95 A.確認測試 B.集成測試 C.驗證測試 D.驗收測試(36)下列工具中屬于需求分析常用工具的是(D)注:P67 A.PAD B.PFD C.N-S D.DFD(37)下面不屬于軟件設計原則的是(C)注:P73 A.抽象 B.模塊化 C.自底向上 D.信息隱蔽(38)索引屬于(B)A.模式 B.內模式 C.外模式 D.概念模式

(39)在關系數據庫中,用來表示實體之間聯系的是(D)A.樹結構 B.網結構 C.線性表 D.二維表

(40)將E-R圖轉換到關系模式時,實體與聯系都可以表示成(B)A.屬性 B.關系 C.鍵 D.域

(41)在下列選項中,哪個不是一個算法一般應該具有的基本特征(C)A.確定性 B.可行性 C.無窮性 D.擁有足夠的情報(42)希爾排序法屬于哪一種類型的排序法(B)A.交換類排序法 B.插入類排序法 C.選擇類排序法 D.建堆排序法(43)在深度為5的滿二叉樹中,葉子結點的個數為(C)A.32 B.31 C.16 D.15(44)對長度為N的線性表進行順序查找,在最壞情況下所需要的比較次數為(B)注:要牢記

A.N+1 B.N C.(N+1)/2 D.N/2(45)信息隱蔽的概念與下述哪一種概念直接相關(B)注:P74 A.軟件結構定義 B.模塊獨立性 C.模塊類型劃分 D.模擬耦合度

(46)面向對象的設計方法與傳統的的面向過程的方法有本質不同,它的基本原理是(C)A.模擬現實世界中不同事物之間的聯系 B.強調模擬現實世界中的算法而不強調概念 C.使用現實世界的概念抽象地思考問題從而自然地解決問題 D.鼓勵開發者在軟件開發的絕大部分中都用實際領域的概念去思考

(47)在結構化方法中,軟件功能分解屬于下列軟件開發中的階段是(C)注:總體設計也就是概要設計

A.詳細設計 B.需求分析 C.總體設計 D.編程調試

(48)軟件調試的目的是(B)注:與軟件測試要對比著復習A.發現錯誤 B.改正錯誤 C.改善軟件的性能 D.挖掘軟件的潛能(49)按條件f對關系R進行選擇,其關系代數表達式為(C)A.R|X|R B.R|X|Rf C.бf(R)D.∏f(R)(50)數據庫概念設計的過程中,視圖設計一般有三種設計次序,以下各項中不對的是(D)注:P127,要牢記

A.自頂向下 B.由底向上 C.由內向外 D.由整體到局部(51)在計算機中,算法是指(C)A.查詢方法 B.加工方法

C.解題方案的準確而完整的描述 D.排序方法

(52)棧和隊列的共同點是(C)注:這一共同點和線性表不一樣

A.都是先進后出 B.都是先進先出 C.只允許在端點處插入和刪除元素 D.沒有共同點

(53)已知二叉樹后序遍歷序列是dabec,中序遍歷序列是debac,它的前序遍歷序列是(A)注:P38,前提要掌握三種遍歷的方法 A.cedba B.acbed C.decab D.deabc(54)在下列幾種排序方法中,要求內存量最大的是(D)注:要牢記,書中沒有提到。

A.插入排序 B.選擇排序 C.快速排序 D.歸并排序

(55)在設計程序時,應采納的原則之一是(A)注:和設計風格有關 A.程序結構應有助于讀者理解 B.不限制goto語句的使用 C.減少或取消注解行 D.程序越短越好

(56)下列不屬于軟件調試技術的是(B)注:P98 A.強行排錯法 B.集成測試法 C.回溯法 D.原因排除法

(57)下列敘述中,不屬于軟件需求規格說明書的作用的是(D)注:P71 A.便于用戶、開發人員進行理解和交流 B.反映出用戶問題的結構,可以作為軟件開發工作的基礎和依據 C.作為確認測試和驗收的依據 D.便于開發人員進行需求分析

(58)在數據流圖(DFD)中,帶有名字的箭頭表示(C)A.控制程序的執行順序 B.模塊之間的調用關系 C.數據的流向 D.程序的組成成分

(59)SQL語言又稱為(C)A.結構化定義語言 B.結構化控制語言 C.結構化查詢語言 D.結構化操縱語言

(60)視圖設計一般有3種設計次序,下列不屬于視圖設計的是(B)A.自頂向下 B.由外向內 C.由內向外 D.自底向上(61)數據結構中,與所使用的計算機無關的是數據的(C)A.存儲結構 B.物理結構 C.邏輯結構 D.物理和存儲結構

(62)棧底至棧頂依次存放元素A、B、C、D,在第五個元素E入棧前,棧中元素可以出棧,則出棧序列可能是(D)A.ABCED B.DBCEA C.CDABE D.DCBEA(63)線性表的順序存儲結構和線性表的鏈式存儲結構分別是(B)A.順序存取的存儲結構、順序存取的存儲結構 B.隨機存取的存儲結構、順序存取的存儲結構 C.隨機存取的存儲結構、隨機存取的存儲結構 D.任意存取的存儲結構、任意存取的存儲結構

(64)在單鏈表中,增加頭結點的目的是(A)A.方便運算的實現 B.使單鏈表至少有一個結點 C.標識表結點中首結點的位置 D.說明單鏈表是線性表的鏈式存儲實現

(65)軟件設計包括軟件的結構、數據接口和過程設計,其中軟件的過程設計是指(B)注:P73 A.模塊間的關系 B.系統結構部件轉換成軟件的過程描述 C.軟件層次結構 D.軟件開發過程

(66)為了避免流程圖在描述程序邏輯時的靈活性,提出了用方框圖來代替傳統的程序流程圖,通常也把這種圖稱為(B)注:P82 A.PAD圖 B.N-S圖 C.結構圖 D.數據流圖

(67)數據處理的最小單位是(C)注:數據項不可再分割 A.數據 B.數據元素 C.數據項 D.數據結構

(68)下列有關數據庫的描述,正確的是(C)注:P102 A.數據庫是一個DBF文件 B.數據庫是一個關系 C.數據庫是一個結構化的數據集合 D.數據庫是一組文件

(69)單個用戶使用的數據視圖的描述稱為(A)注:P108 A.外模式 B.概念模式 C.內模式 D.存儲模式(70)需求分析階段的任務是確定(D)A.軟件開發方法 B.軟件開發工具 C.軟件開發費用 D.軟件系統功能(71)算法分析的目的是(D)注:書中沒有總結,但要牢記

A.找出數據結構的合理性 B.找出算法中輸入和輸出之間的關系 C.分析算法的易懂性和可靠性 D.分析算法的效率以求改進(72)鏈表不具有的特點是(B)A.不必事先估計存儲空間 B.可隨機訪問任一元素

C.插入刪除不需要移動元素 D.所需空間與線性表長度成正比

(73)已知數據表A中每個元素距其最終位置不遠,為節省時間,應采用的算法是(B)A.堆排序 B.直接插入排序 C.快速排序 D.直接選擇排序(74)用鏈表表示線性表的優點是(A)注:因為不需要移動元素

A.便于插入和刪除操作 B.數據元素的物理順序與邏輯順序相同 C.花費的存儲空間較順序存儲少 D.便于隨機存取

(75)下列不屬于結構化分析的常用工具的是(D)注:P67 A.數據流圖 B.數據字典 C.判定樹 D.PAD圖

(76)軟件開發的結構化生命周期方法將軟件生命周期劃分成(A)A.定義、開發、運行維護 B.設計階段、編程階段、測試階段 C.總體設計、詳細設計、編程調試 D.需求分析、功能定義、系統設計

(77)在軟件工程中,白箱測試法可用于測試程序的內部結構。此方法將程序看做是(C)注:P87 A.循環的集合 B.地址的集合 C.路徑的集合 D.目標的集合

(78)在數據管理技術發展過程中,文件系統與數據庫系統的主要區別是數據庫系統具有(D)注:數據模型采用關系模型(二維表)A.數據無冗余 B.數據可共享

C.專門的數據管理軟件 D.特定的數據模型(79)分布式數據庫系統不具有的特點是(B)A.分布式 B.數據冗余

C.數據分布性和邏輯整體性 D.位置透明性和復制透明性

(80)下列說法中,不屬于數據模型所描述的內容的是(C)注:P110 A.數據結構 B.數據操作 C.數據查詢 D.數據約束

(81)根據數據結構中各數據元素之間前后件關系的復雜程度,一般將數據結構分成(C)A.動態結構和靜態結構 B.緊湊結構和非緊湊結構 C.線性結構和非線性結構 D.內部結構和外部結構(82)下列敘述中,錯誤的是(B)A.數據的存儲結構與數據處理的效率密切相關 B.數據的存儲結構與數據處理的效率無關 C.數據的存儲結構在計算機中所占的空間不一定是連續的 D.一種數據的邏輯結構可以有多種存儲結構

(83)線性表L=(a1,a2,a3,…ai,…an),下列說法正確的是(D)A.每個元素都有一個直接前件和直接后件 B.線性表中至少要有一個元素 C.表中諸元素的排列順序必須是由小到大或由大到 D.除第一個元素和最后一個元素外,其余每個元素都有一個且只有一個直接前件和直接后件

(84)線性表若采用鏈式存儲結構時,要求內存中可用存儲單元的地址(D)A.必須是連續的 B.部分地址必須是連續的 C.一定是不連續的 D.連續不連續都可以(85)棧通常采用的兩種存儲結構是(A)A.順序存儲結構和鏈式存儲結構 B.散列方式和索引方式 C.鏈表存儲結構和數組 D.線性存儲結構和非線性存儲結構(86)下列數據結構中,按先進后出原則組織數據的是(B)A.線性鏈表 B.棧 C.循環鏈表 D.順序表(87)樹是結點的集合,它的根結點數目是(C)A.有且只有1 B.1或多于1 C.0或1 D.至少2(88)具有3個結點的二叉樹有(D)A.2種形態 B.4種形態 C.7種形態 D.5種形態(89)設一棵二叉樹中有3個葉子結點,有8個度為1的結點,則該二叉樹中總的結點數為(B)A.12 B.13 C.14 D.15(90)在結構化程序設計思想提出之前,在程序設計中曾強調程序的效率,現在,與程序的效率相比,人們更重視程序的(C)A.安全性 B.一致性 C.可理解性 D.合理性(91)為了提高測試的效率,應該(D)注:P85 A.隨機選取測試數據B.取一切可能的輸入數據作為測試數據C.在完成編碼以后制定軟件的測試計劃 D.集中對付那些錯誤群集的程序(92)軟件生命周期中所花費用最多的階段是(D)A.詳細設計 B.軟件編碼 C.軟件測試 D.軟件維護

二、填空題

(1)算法的復雜度主要包括______復雜度和空間復雜度。答:時間(2)數據的邏輯結構在計算機存儲空間中的存放形式稱為數據的______。答:存儲結構#物理結構

(3)若按功能劃分,軟件測試的方法通常分為白盒測試方法和______測試方法。答:黑盒

(4)如果一個工人可管理多個設施,而一個設施只被一個工人管理,則實體“工人”與實體“設備”之間存在______聯系。答:一對多#1:N#1:n(5)關系數據庫管理系統能實現的專門關系運算包括選擇、連接和______。答:投影(6)在先左后右的原則下,根據訪問根結點的次序,二叉樹的遍歷可以分為三種:前序遍歷、______遍歷和后序遍歷。答:中序

(7)結構化程序設計方法的主要原則可以概括為自頂向下、逐步求精、______和限制使用goto語句。答:模塊化

(8)軟件的調試方法主要有:強行排錯法、______和原因排除法。答:回溯法(9)數據庫系統的三級模式分別為______模式、內部級模式與外部級模式。答:概念#概念級

(10)數據字典是各類數據描述的集合,它通常包括5個部分,即數據項、數據結構、數據流、______和處理過程。答:數據存儲(11)設一棵完全二叉樹共有500個結點,則在該二叉樹中有______個葉子結點。答:250(12)在最壞情況下,冒泡排序的時間復雜度為______。答:n(n-1)/2#n*(n-1)/2#O(n(n-1)/2)#O(n*(n-1)/2)(13)面向對象的程序設計方法中涉及的對象是系統中用來描述客觀事物的一個______。答:實體

(14)軟件的需求分析階段的工作,可以概括為四個方面:______、需求分析、編寫需求規格說明書和需求評審。答:需求獲取(15)______是數據庫應用的核心。答:數據庫設計

(16)數據結構包括數據的______結構和數據的存儲結構。答:邏輯

(17)軟件工程研究的內容主要包括:______技術和軟件工程管理。答:軟件開發 注:P64(18)與結構化需求分析方法相對應的是______方法。答:結構化設計

(19)關系模型的完整性規則是對關系的某種約束條件,包括實體完整性、______和自定義完整性。答:參照完整性

(20)數據模型按不同的應用層次分為三種類型,它們是______數據模型、邏輯數據模型和物理數據模型。答:概念 注:P110(21)棧的基本運算有三種:入棧、退棧和______。答:讀棧頂元素#讀棧頂的元素#讀出棧頂元素

(22)在面向對象方法中,信息隱蔽是通過對象的______性來實現的。答:封裝(23)數據流的類型有______和事務型。答:變換型 注:P77(24)數據庫系統中實現各種數據管理功能的核心軟件稱為______。答:數據庫管理系統#DBMS 注:要牢記,重要

(25)關系模型的數據操縱即是建立在關系上的數據操縱,一般有______、增加、刪除和修改四種操作。答:查詢 注:要牢記

(26)實現算法所需的存儲單元多少和算法的工作量大小分別稱為算法的 ______。答:空間復雜度和時間復雜度(27)數據結構包括數據的邏輯結構、數據的 ______以及對數據的操作運算。答:存儲結構 注:P7(28)一個類可以從直接或間接的祖先中繼承所有屬性和方法。采用這個方法提高了軟件的______。答:可重用性

(29)面向對象的模型中,最基本的概念是對象和 ______。答:類

(30)軟件維護活動包括以下幾類:改正性維護、適應性維護、______維護和預防性維護。答:完善性 注:要牢記,書中沒有提到

(31)算法的基本特征是可行性、確定性、______和擁有足夠的情報。答:有窮性

(32)順序存儲方法是把邏輯上相鄰的結點存儲在物理位置______的存儲單元中。答:相鄰

(33)Jackson結構化程序設計方法是英國的M.Jackson提出的,它是一種面向______的設計方法。答:數據結構 注:P67(34)數據庫設計分為以下6個設計階段:需求分析階段、______、邏輯設計階段、物理設計階段、實施階段、運行和維護階段。答:概念設計階段#數據庫概念設計階段

(35)數據庫保護分為:安全性控制、______、并發性控制和數據的恢復。答:完整性控制 注:要牢記(36)測試的目的是暴露錯誤,評價程序的可靠性;而______的目的是發現錯誤的位置并改正錯誤。答:調試

(37)在最壞情況下,堆排序需要比較的次數為______。答:O(nlog2n)(38)若串s=“Program”,則其子串的數目是______。答:29(39)一個項目具有一個項目主管,一個項目主管可管理多個項目,則實體“項目主管”與實體“項目”的聯系屬于______的聯系。答:1對多#1:N(40)數據庫管理系統常見的數據模型有層次模型、網狀模型和______三種。答:關系模型

(41)數據的邏輯結構有線性結構和_______兩大類。答非線性結構

(42)數據結構分為邏輯結構與存儲結構,線性鏈表屬于_______。答:存儲結構(43)數據的基本單位是_______。答:元素

(44)長度為n的順序存儲線性表中,當在任何位置上插入一個元素概率都相等時,插入一個元素所需移動元素的平均個數為______。答:n/2(45)當循環隊列非空且隊尾指針等于隊頭指針時,說明循環隊列已滿,不能進行入隊運算。這種情況稱為______。答:上溢

(46)在面向對象方法中,類之間共享屬性和操作的機制稱為_______。答:繼承

第四篇:計算機VB二級公共基礎知識總結

數據結構的基礎知識

數據結構的定義:指數據對象及其相關關系和構造方法。

結構是指結點之間的關系,數據結構就是在結點的優先集合和關系的有限集合。

數據結構的邏輯結構是指結點和結點間的相互關系。

數據結構在計算機的存儲內容,一般包括結點的值和結點間的關系,數據結構的存儲形式就是數據的存儲結構。

數據結構按邏輯關系的不同分為線形結構和非線性結構兩大類,非線性又分為樹形結構和圖結構,樹形結構又分為樹結構和二叉樹結構。2 線性表

線性表是最簡單、最常用的一種數據結構,它是由相同類型的結點組成的有限序列。線性表最重要的性質是線性表中結點的相對位置是確定的。

線性表常用的運算有4種:查找運算、插入運算、刪除運算和其他運算。

線性表的存儲方式主要有:

1)順序存儲:能直接訪問線性表中的任意一個結點。2)鏈接存儲:用單鏈表存儲線性表。3 棧和隊列的含義

棧是只允許在同一端進行插入和刪除運算的線性表。

隊列是只允許在一端進行插入運算,另一端進行刪除運算的線性表。4 數組和字符串的特點 數組是最常用的數據結構之一,一般用于描述順序存儲的線性表。數組有固定個數的元素組成,全部元素的類型相同,元素按照順序存儲。每個元素對應一個下標,數組元素按數組名和元素的下標引用,引用數組元素的下標個數稱為數組的維數。最常用的是二維數組。5 樹的基本概念、存儲結構和遍歷

樹是一種多分支、多層次的數據結構,有一組結點組成。樹是由一個結點或多個結點組成的有限集T,滿足以下兩個條件: 1)有一個特定的結點,稱為根結點

2)其余的結點分成m個互不相交的有限集T0等,每個集合都是根結點的子樹。

樹的定義是遞歸的,即一棵樹是由子樹組成,子樹由更小的子樹構成。樹的存儲結構:樹是非線性的結構,有多種實用的存儲結構,最常用的是標準存儲形式和帶逆存儲形式。

樹的遍歷方法有4種:樹的前序遍歷、樹的后序遍歷、樹的層次遍歷、訪問樹中所有的葉子特點。6 二叉樹的基本概念及遍歷

二叉樹是一個有限的結點集合,該集合或者為空,或者有一個結點及其兩棵樹不相交的左右二叉子樹組成。

二叉樹的遍歷:前序遍歷,中序遍歷、后序遍歷。7二叉查找樹

查找樹便于鏈接存儲,還能實現快速查找。或者為空,或者滿足以下3個條件:A 該樹根結點的左子樹非空,其左子樹所有結點的鍵值都小于該樹根結點的鍵值。B該樹根結點的右子樹非空,其右子樹所有結點的鍵值都大于該樹根結點的鍵值C該樹的根結點的左子樹和右子樹均為查找樹。8 關于排序與查找,散列表

對于有N個結點的線性表,將結點中某些數據項的值按遞增或遞減的次序,重新排列線性表結點的過程,稱為排序。

查找就是在案某種數據結構形式存儲的數據集合中,找出滿足指定條件的結點。

散列表又稱雜湊表是一種非常實用的查找技術。由于查找碼與結點在數據結構中的位置不存在確定關系,查找只能通過對查找碼與結點的關鍵碼的反復比較來實現。第二章 程序設計基礎知識 1程序設計的方法與風格

程序設計的方法主要是結構化程序的設計,集體有面向數據流的方法和面向數據結構的方法。數據結構既影響程序處理的結構又影響程序處理的過程。

程序設計風格主要是指面向過程的程序設計和面向對象的程序設計。面向過程的程序設計主要是指根據事物本身的邏輯過程進行編程的一種方法,而面向對象的主要是強調程序的功能模塊化,同時引入了繼承、多態的概念,使程序易于編寫和維護,最適合規模較大的軟件。2 結構化的程序設計

結構化的程序(SP)設計采取自頂向下逐步求精的設計方法和單入口單出口的控制結構。其設計方法符合抽象和分解的原則。其控制結構使程序的靜態結構和動態結構執行過程一致。3面向對象的設計方法及相關概念

面向對象方法是一種支持模塊化設計和軟件重用的編程方法。它把程序設計的主要活動集中在建立對象和對象之間的聯系上,其基本思想是封裝性和可擴展性。以軟件設計的對象為基礎。

對象:在計算機系統中,指一組屬性以及這組屬性上的專用操作的封裝體。一個對象通常可由對象名,屬性和操作3個部分組成。封裝:是一種信息隱蔽技術,用戶只能看見對象封裝界面上的信息,對象的內部實現對用戶是隱蔽的。其目的是使對象的使用者和生產者分離,使對象的定義和實現分開。

屬性:對象的特性,是對象外觀及行為的特征。

方法:對象所具有的功能。每一個對象的屬性,只能通過特定的操作來存取或者修改,這種特定的操作就是方法。

繼承:在某個類的層次關聯中,不同的類共享屬性和操作的一種機制。一個子類可以只有唯一的一個父親,被稱為單一繼承,一個子類也可以由多個父親,從多個父親中繼承特性,叫多重繼承。

多態性:指同一個操作作用于不同對象可以有不同的解釋,產生不同的執行結果。

動態綁定:在運行過程中,當一個對象發送信息請求服務時,要根據接收對象的具體情況將請求的操作與實現方法連接。

第三章 軟件工程基礎知識 1軟件生存周期各階段的任務

軟件生存周期指軟件定義、軟件開發和軟件維護等階段組成的全過程。

A定義階段;確定系統的邏輯模型,產生有需求規格說明書

B開發階段:軟件設計、編碼和測試3部分。軟件設計分為概要設計和詳細設計。編碼是用某種程序語言為每個模塊編寫程序,產生的文檔有程序清單。軟件測試的任務是發現軟件中的錯誤加以糾正。C維護階段:適應外界環境的變化,或擴充其功能,改善其質量,產生的文檔有維護計劃和維護報告。2 軟件設計的原則

1)抽象原則;抽象的最低層次就是實現該軟件的源程序代碼。過程抽象和數據抽象是常有的兩種抽象手段。2)模塊化原則:

3)信息隱蔽原則:對提高軟件的可修改性、可測試性和可移植性有重要作用。4)模塊獨立的原則 3軟件測試

軟件測試的目的是盡可能多的發現軟件產品中的錯誤和缺陷。白盒測試主要檢查程序中的邏輯通路

黑盒測試主要檢查程序的功能是否符合規格說明書的要求。大多的軟件生產者使用Alpha測試和Beta測試,后者的開發者通常不在場。4軟件開發工具和環境 軟件工具是指用來輔助軟件開發、運行、維護、管理和支持等過程中活動的軟件。大多包括檢測機制。

軟件開發環境則把一組相關的工具集成在環境中,提供數據集成、控制集成和界面集成等機制。第四章 數據庫的基礎知識 1數據庫

數據庫:是存儲在一起的相關數據的集合,能為各種用戶共享,具有最下冗余度,數據間的聯系密切,由較高的程序與數據獨立性。數據庫管理系統:指位于用戶和操作系統之間的一層數據管理軟件,為用戶或應用程序提供訪問數據庫的方法,包括數據庫的建立、查詢、更新及各種數據控制。它是DBS的核心部分。

數據庫系統:是實現有組織地,動態的存儲大量關聯數據,方便多用戶訪問的計算機軟、硬資源組成的系統,即采用了數據庫技術的計算機系統。2 數據模型

常有的數據模型有兩種:一種是獨立于任何計算機系統的模型,完全不涉及信息在計算機系統中的表示,稱為“概念數據模型”。最著名的模型是“實體聯系E-R模型”。另一種數據模型直接面向數據庫的邏輯數據結構,被稱為“基本數據模型”。

基本數據模型主要有層次、網狀、關系三種模型。層次模型時用樹型結構來表示實體類型及實體間聯系的數據模型。網狀模型用叢結構表示,關系模型用表格結構表示實體集,用鍵表示實體間的聯系。網狀模型采用有向圖,層次模型采用樹,關系模型采用二維表。在搜索數據時,層次模型采用單向搜索法,網狀模型采用可從任一結點開始且沿任何路徑搜索,關系模型則是通過對關系進行運算實現的。3 關系代數

關系數據庫的數據與更新操作必須遵循實體完整性規則、引用完整性原則、用戶定義完整性原則。

關系代數是以集合代數為基礎發展起來的,以關系為運算對象的一組高級運算的集合。

關系代數的5種基本操作;并、差、笛卡兒積、投影和選擇。關系代數的4種組合操作;交、聯接、自然聯接和除法。

4在數據庫中,用概念模式描述全部數據的整體邏輯結構,負責物理結構與邏輯結構的定義和修改的人員是數據庫管理員。數據庫管理系統提供的數據定義語言的功能是描述數據庫的結構,為用戶建立數據庫提供手段。在人事管理系統中,規定工程師的基本工資和獎金不能超過1500元,這樣的數據完整性約束條件稱之為用戶定義完整性。在關系數據庫的邏輯設計階段,需將E-R模型轉換為關系數據模型。

第五篇:全國計算機等級考試二級VB考點分析之過程

全國計算機等級考試二級VB考點分析之過程

6.1 Sub過程

考點1 建立Sub過程

通用Sub過程的結構與前面多次見過的事件過程的結構類似。一般格式如下:

[Static][Private][Public]Sub過程名[(參數列表)] 語句塊

[Exit Sub] [語句塊] End Sub

說明:

(1)Sub過程以Sub開頭,以End Sub結束,在Sub和End Sub之間是描述過程操作的語句塊,稱為“過程體”或“子程序體”。

(2)End Sub標志著Sub過程的結束。

(3)Sub過程不能嵌套。

考點2 調用Sub過程

調用引起過程的執行。也就是說,要執行一個過程,必須調用該過程。

Sub過程的調用有兩種方式:一種是把過程的名字放在一個Call語句中,一種是把過程名作為一個語句來使用。

(1)用Call語句調用Sub過程。

格式:Call過程名[(實際參數)]。

(2)把過程名作為一個語句來使用。

在調用Sub過程時,如果省略關鍵字Call,就成為調用Sub過程的第2種方式。與

第1種方式相比,它有兩點不同:

(1)去掉關鍵字Call。

(2)去掉“實際參數”的括號。考點3 通用過程與事件過程

控件事件過程的一般格式為:

[Private | Public] Sub控件名_事件名(參數表)語句組

End Sub

窗體事件過程的一般格式為:

[Private][Public] Sub Form_事件名(參數表)語句組

End Sub

通用過程可以放在標準模塊中,也可以放在窗體模塊中,而事件過程只能放在窗體模塊中,不同模塊k中的過程(包括事件過程和通用過程)可以互相調用。當過程名唯一時,可以直接通過過程名調用;如果兩個或兩個以上的標準模塊中含有相同的過程名,則在調用時必須用模塊名限定,其一般格式為:

模塊名.過程名(參數表)

一般來說,通用過程(包括Sub過程、Function過程)之間、事件過程之間、通用過程與事件過程之間,都可以互相調用。

6.2 建Function過程

考點4 建立Function過程

Function過程定義的格式如下:

[Static][Private][Public]Function過程名[(參數表列)][As類型] [語句塊] [過程名=表達式] [Exit Function] [語句塊] End Function

說明:

(1)Function過程以Function開頭,以End Function結束,在兩者之間是描述過程操作的語句塊。

(2)調用Sub過程相當于執行一個語句,不直接返回值;而調用Function過程要返回一個值,因此可以像內部函數一樣在表達式中使用。

考點5 調用Function過程

Function過程的調用比較簡單,因為可以像使用Visual Basic內部函數一樣來調用Function過程。實際上,由于Function過程能返回一個值,因此完全可以把它看成是一個函數,它與內部函數(如Sqr,Str$,Chr$等)沒有什么區別,只不過內部函數由語句系統提供,而Function過程由用戶自己定義。

6.3 參數傳送

在Visual Basic中,通常把形式參數叫做“參數”,而把實際參數叫做“自變量”。

考點6 形參與實參

形參是在Sub,Function過程的定義中出現的變量名,實參則是在調用Sub或Function過程時傳送給Sub或Function過程的常數、變量、表達式或數組。在Visual Basic中,可以通過兩種方式傳送參數,即按位置傳送和指名傳送。

考點7 引用

Visual Basic中,參數通過兩種方式傳送,即傳地址和傳值,其中傳地址習慣上稱為引用。在默認情況下,變量(簡單變量、數組或數組元素以及記錄)都是通過“引用”傳送給Sub或Function過程的。在這種情況下可以通過改變過程中相應的參數來改變變量成值,這意著,當通過引用來傳送實參時,可以改變傳送給過程的變量的值。

考點8 傳值

傳值就是通過值傳送實際參數,即傳送實參的值而不是傳送它的地址。在這種情況下,系統扭需要傳送的變量復制到一個臨時的單元中,然后把該臨時單元的地址傳送給被調用的通用過程。由于通過過程沒有訪問變量(實參)的原始地址,因此不會改變原來變量的值,所有的變化都是在變量的副本上進行的。

考點9 數組參數的傳送

Visual Basic允許把數組作為實參傳送到過程中。用數組作為過程的參數時,應在數組名的后面加上一對括號,以免與普通變量相混淆。除遵循參數傳送的一般規則外,還應注意以下兩點:

(l)為了把一個數組的全部元素傳遞給一個過程,應將數組名分別放入實參表和形參表中,并略去數組的上下界,但括號不能省略。

(2)如果不需要把整個數組傳遞給通用過程,可以只傳遞指定的單個元素,這需要在數組名后面的括號中定上指定的元素下標。

6.4 可選參數和可變參數

Visual Basic 6.0提供了十分靈活和安全的參數傳送方式,允許使用可選參數和可變參數。在調用一個過程時,可以向過程傳送可選的參數或者任意數量的參數。

考點10 可選參數

在調用一個過程時,有時并不是每次都要傳遞所有的參數。有些參數的存在是為了提供某項功能,但這項功能不是每次調用該過程時都需要的或者在調用這個過程時,某個參數在絕大部分時間內都使用同一個值,對于其他的值只有在特殊的情況下才使用。

使用可選參數時還應注意兩點:

(1)如果某個參數被指定為可選參數,那么它后面的參數必須都是可選的。

(2)Optional關鍵字可以和ByVal關鍵字一起使用。

考點11 可變參數

在使用可變參數時應注意以下5點:

(1)ParamArray關鍵字只能用于參數列表中的最后一個參數。

(2)用ParamArray關鍵字聲明的參數數組只能是Variant類型。

(3)ParamArray關鍵字不能和ByVal關鍵字,ByRef關鍵字以及Optional關鍵字一起使用。

(4)如果使用ParamArray關鍵字聲明可變個數參數,那么其他的參數都不能被聲明為可選的。

(5)用ParamArray關鍵字聲明的參數數組,無論是否使用了Option Basel語句,它的下界總是0。

6.5 對象參數

考點12 對象參數

和傳統的程序設計語言不同,Visual Basic允許用對象作為參數,即窗體或控件作為通用過程的參數。在有些情況下,這可以簡化程序設計,提高效率。實際上,在Visual Basic中還可以向過程傳送對象,包括窗體和控件。

對象作為參數與用其他數據類型作為參數的過程沒有什么區別,其格式為:

Sub過程名(形式參數表)語句塊

[Exit Sub] …

End Sub

“形式參數表”中的形參的類型通常為Control或Form注意,在調用含有對象的過程時,對象只能通過傳地址方式傳送。因此在定義過程時,不能在其參數前加關鍵字ByVal。

6.6 局部內存分配

考點13 局部內存分配

有時候,在過程結束時,可能不希望失去保存在局部變量中的值。如果把變量聲明為全局變量或模塊級變量,則可解決這個問題。但如果聲明的變量只在一個過程中使用,則這種方法并不好。為此,Visual Basic提供了一個Static語句,其格式為:

Static變量表

其中“變量表”的格式如下:

變量[()][As類型][,變量[()][As類型]]…

可以看出,Static語句的格式與Dim語句完全一樣,但Static語句只能出現在事件過程、Sub過程或Function過程中。在過程中的Static變量只有局部的作用域,即只在本過程中可見,但可以和模塊級變量一樣,即使過程結束后,其值仍能保留。

在程序設計過程中,Static語句常用于以下兩種情況:

(1)記錄一個事件被觸發的次數,即程序運行時事件發生的次數。

(2)用于開關切換,即原來為開,將其改為關,反之亦然。

6.7 Shell函數

考點14 shell函數

在Visual Basic中不但可以調用通用過程,而且可以調用各種應用程序。也就是說,凡是能在Windows下運行的應用程序,基本上都可以在Visual Basic中調用。這一功能通過Shell函數來實現。

Shell函數的格式如下:

Shell(命令字符串[,窗口類型])

其中“命令字符串”是要執行的應用程序的文件名(包括路徑),它必須是可執行文件,其擴展名為.COM,.EXE,.BAT或.PIF,其他文件不能用Shell函數執行。

下載【考試大論壇】-全國計算機二級VB要點總結(共五篇)word格式文檔
下載【考試大論壇】-全國計算機二級VB要點總結(共五篇).doc
將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
點此處下載文檔

文檔為doc格式


聲明:本文內容由互聯網用戶自發貢獻自行上傳,本網站不擁有所有權,未作人工編輯處理,也不承擔相關法律責任。如果您發現有涉嫌版權的內容,歡迎發送郵件至:645879355@qq.com 進行舉報,并提供相關證據,工作人員會在5個工作日內聯系你,一經查實,本站將立刻刪除涉嫌侵權內容。

相關范文推薦

主站蜘蛛池模板: 夜晚成人18禁区导航网站| 欧洲性开放大片免费无码| 亚洲男人的天堂av手机在线观看| 97久久香蕉国产线看观看| 亚洲综合无码一区二区三区不卡| 成人性生交大片免费看vr| 色婷婷美国农夫综合激情亚洲| 曰韩精品无码一区二区视频| 五月婷婷六月丁香动漫| 国产精品igao视频| 97精品伊人久久久大香线蕉| 永久免费无码av在线网站| 亚洲三区在线观看内射后入| 久久精品亚洲日本波多野结衣| 国产精品美女久久久久久2021| 欧洲精品无码一区二区三区在线播放| 久久国语露脸国产精品电影| 18禁无码永久免费无限制网站| 狠狠色丁香婷婷综合久久小说| 大屁股熟女一区二区三区| 精品国产一区二区三区久久影院| 黑人粗硬进入过程视频| 欧美变态另类牲交zozo| 午夜成人影片av| 国产无遮挡无码很黄很污很刺激| 亚洲av日韩综合一区在线观看| 国产乱人激情h在线观看| 国内a∨免费播放| 鲁鲁鲁爽爽爽在线视频观看| 欧美顶级metart裸体全部自慰| 狠狠色丁香五月综合缴情婷婷五月| 成人影片麻豆国产影片免费观看| 亚洲欧美另类久久久精品能播放的| 使劲快高潮了国语对白在线| 久久亚洲精品无码观看网站| 亚洲精品日韩一区二区小说| 4399理论片午午伦夜理片| 与子敌伦刺激对白播放的优点| 人妻18毛片a级毛片免费看| 嫩草研究院久久久精品| 最新国产亚洲人成无码网站|