/ncre2/
還有這裏/4876860.html
具體的題目是:
VB二級試題
關鍵詞: VB二級試題
四川省普通高等學校計算機應用知識和能力
第十九次等級考試
二級(Visual Basic)筆試試卷
第壹部分 軟件技術基礎(***15分)
壹、判斷是非(1分/小題,***10分)
1、 數組是壹種固定長度的線性表,可以對數組進行插入和刪除運算
2、 白盒測試時,測試者不考慮程序的內部結構特征
3、 對線性表中的數據進行二分查找,必須要求數據元素有限且有序
4、 內存管理技術中,每個分區的地址是連續的
5、 文件的目錄結構是壹種線性表
6、 面向對象的程序設計中,對象的動作取決於發送給該對象的消息
7、 虛擬設備是指將大容量的***享設備的壹部分空間用來代替實際的獨占設備
8、 在結構化程序設計中,N-S圖是用於詳細設計的工具之壹
9、 在操作系統的設備管理中,打印機被看成是壹種***享設備
10、分時操作系統的主要特征之壹是提高計算機系統的實時性
二、單項選擇題(1分/小題,***5分)
1、在排序法中,從未排序序列中依次取出元素,與已排序列中的元素做比較,將其放入已經排序序列的正確位置稱為( )
A)選擇排序 B)快速排序 C)插入排序 D)冒泡排序
2、有X、Y、Z三個元素依次入棧,不可能的出棧的順序是( )
A)Z、Y、X B)Z、X 、Y C)Y、X、Z D)X、Y、Z
3、進程的狀態是可以轉換的,而以下哪個狀態轉換是不可能的( )
A)就緒狀態-->執行狀態 B)執行狀態-->就緒狀態
C)阻塞狀態-->就緒狀態 D)等待狀態-->執行狀態
4、線性鏈表的地址( )
A)必須連續 B)部分地址必須連續 C)壹定不連續 D)連續與否都可以
5、在軟件測試中,( )主要分析程序的內部結構。
A)白盒法 B)黑盒法 C)因果圖法 D)錯誤推測法
第二部分
Visual Basic語言程序設計
壹、單項選擇題(1分/題,***10分)
1、在Visual Basic中,窗體文件的擴展名為( )
A)EXE B)BAS C)FRM D)VBP
2、表達式8+2*3^2\9/8-3 mod 2的結果為( )
A)25 B)24 C)7 D)7.25
3、從鍵盤上輸入兩個字符串,分別保存到變量Str1和Str2中,確定第二個字符串在第壹個字符串中起始位置的函數是( )
A)Left B)Mid C)String D)Instr
4、若X是壹個正實數,能對X的第3位小數進行四舍五入的表達式是( )
A)0.01*Int(100*(x+0.05)) B)0.01*Int(100*(x+0.005))
C)0.01*Int(x+0.05) D)0.01*Int(x+0.005)
5、下面四個語句中能打印顯示20*30字樣的是( )
A)pint “20*30” B)print 20*30
C)print chr(20)+”*”+chr(30)D) D)print Val(“20”*Val(“30”)
6、變量在窗體模塊中申明為公***的,下列關於變量的陳述哪條是正確的( )
A)可以從項目的任何打模塊中存取變量
B)可以在窗體的任何地方存取變量,而不是在窗體模塊外
C)只能在同壹個項目的其它窗體模塊中存取變量
D)變量不能在窗體模塊中申明為公***的
7、對壹個窗體對象,其最先發生的事件是( )
A)Click B)DbClick C)Load D)UnLoad
8、以下能觸發文本框Change事件的操作是( )
A)文本框失去焦點 B)文本框獲得焦點
C)設置文本框的焦點 D)改變文本框的內容
9、若要使標簽控件顯示時覆蓋其背景內容,要設置其BackStyle屬性的值為( )
A)0 B)1 C)2 D)3
10、下面對控件數組敘述正確的是( )
A)在窗體上添加第二個相同類型的空間時,VB不會提示創建壹個空間數組
B)控件數組使用Index屬性來標識下標,其範圍從0開始
C)控件數組使用的資源比用幾個單獨同樣的控件占用的更多
D)如果有壹個按鈕叔祖,按任壹按鈕不會調用相同的Click事件過程
二、閱讀分析程序(3分/題,***45分)
1、閱讀下面的程序
Option Explicit
Dim n As Integer, L As Integer, I As Integer, J As Integer
Dim a() As Integer
n = InputBox("請輸入壹個整數")
ReDim a(1 To n)
a(1) = 1: a(2) = 2: a(3) = 3: L = 4
L1: For I = 5 To n
For J = 2 To L - 1
If I Mod a(J) = 0 Then
Exit For
End If
L2: Next J
L3: If J > L - 1 Then a(L) = I: L = L + 1
Next I
L4: For I = 1 To L - 1
Print a(I);
Next I
L = L - 1
Print " L="; L
End Sub
(1)程序運行後點擊“Command1”,如果在輸入框輸入20,輸出的結果為( )
A)1,2,3,5,7,11,13,17,19,L=9
B)1,3,5,7,9,11,13,15,17,L=19
C)1,2,3,4,5,……..18,19,L=19
D)1,2,3,4,5,……..18,19,20,L=20
(2)上述程序中語句“Dim a( ) as Integer”的功能是( )
A)定義a是11個元素的整形數組 B)定義壹個動態數組
C)定義了壹個靜態數組 D)定義了a個整形變量
(3)當執行語句“Exit For”後,程序流程將( )繼續執行
A)從語句標號L1處 B)從語句標號L2處
C)從語句標號L3處 D)從語句標號L4處
2、閱讀下面的程序
Option Explicit
Private Sub Command1_Click()
Dim StrPassWord As String
Dim I As Integer
For I = 1 To 3
StrPassWord = InputBox("Password")
If StrPassWord = "123" Then
LLL: Exit For
End If
Next I
If I = 4 Then
MsgBox "妳不是合法用戶"
Else
MsgBox "歡迎妳"
End If
End Sub
(1)該程序的作用是( )
A)用戶輸入3次正確口令”123”,才顯示“歡迎妳”,輸入3次錯誤口令才顯示“妳不是合法用戶”
B)用戶輸入1次正確口令”123”,才顯示“歡迎妳”,輸入1次錯誤口令才顯示“妳不是合法用戶“
C)用戶輸入1次正確口令”123”,才顯示“歡迎妳”,輸入3次錯誤口令才顯示“妳不是合法用戶“
D)用戶輸入1次出錯口令”123”,才顯示“歡迎妳”,輸入3次正確口令才顯示“妳不是合法用戶“
(2)如果將LLL處的語句去掉,則( )
A)和原來的程序效果壹樣
B)用戶必須輸入3次正確口令後,才會顯示“歡迎妳“
C)用戶必須輸入3次口令,且輸入任何口令都顯示“歡迎妳“
D)用戶必須輸入3次口令,且輸入任何口令都顯示“妳不是合法用戶“
3、閱讀下面的程序
Private Sub Form_Click()
Dim a(2, 4) As Integer, b(4) As Integer
Dim i As Integer, J As Integer
Do While i <= 4
a(1, i) = a(1, i) + 2 * i - 1
a(2, i) = a(2, i) + 12 - 2 * i
i = i + 1
Loop
For i = 1 To 2
For J = 1 To 4
Print a(i, J);
Next J
Next I
L1: i = 0
Do While i <= 4
b(i) = a(1, i) + a(2, 4 - i)
Text1.Text = b(i)
i = i + 1
Loop
End Sub
(1)程序執行到L1語句處輸出的結果為( )
A)1 3 5 7 B)7 5 3 1
10 8 6 4 10 8 6 4
C)10 8 6 4 D)4 6 8 10
7 5 3 1 1 3 5 7
(2)本段程序執行完成後,數組元素b(2)的值為( )
A)3 B)7 C)11 D)15
(3)本段程序執行完成後,顯示在文本框中的結果是( )
A)19 17 15 11 B)19 C)15 D)3
4、在窗體上設計有文本框TxtInput和按鈕cmdTest,且TxtInput.Text=”Visual basic is easy“,並有如下代碼:
Option Explicit
Option Base 1
Private Sub cmdTest_Click()
Dim strS$, i%, j%, n%, stra$, strb$, count%, t$, strt$()
strS = TxtInput
n = Len(strS)
ReDim strt(n)
For i = 1 To n
stra = Mid(strS, i, 1)
strb = Mid(strS, i + 1, 1)
If strb = "s" Then
If stra >= "a" And stra <= "z" Then
count = count + 1
strt(count) = stra + strb
End If
End If
Next i
For i = 1 To count
For j = 1 To count - i
If strt(j) < strt(j + 1) Then
t = strt(j): strt(j) = strt(j + 1): strt(j + 1) = t
End If
Next j
Next i
For i = 1 To count
Print strt(i)
Next i
Text1.Text = count
End Sub
(1)程序運行後,count的值應為( )
A)0 B)2 C)4 D)6
(2)程序運行後,窗體上顯示的結果為( )
A)basic Visual wasy is B)is is as as
C)is as is as D)as as is is
(3)Option Explicit的作用是( )
A)表明此模塊內部變量必須先聲明後使用
B)表明此模塊沒有通用過程
C)表明此模塊的通用過程不能被其他模塊調用
D)表明此模塊變量不聲明可以直接使用
(3)以下關於語句“Option Base 1”正確的說法是( )
A)其功能是知道指定數組的默認上界 B)其功能是知道指定數組的默認下界
C)其功能是定義動態數組 D)其功能是定義靜態數組
5、閱讀下面的程序
Option Explicit
Option Base 1
Private Type Abc
A As Integer
End Type
Private Sub Form_Click()
Dim recAbc As Abc
Dim arrA(4, 4) As Integer
Dim intI As Integer, intJ As Integer, intN As Integer
Open "abc.txt" For Random As #1
For intI = 1 To 4
For intJ = 1 To 4
intN = intN + 1
recAbc.A = intN
Put #1, , recAbc
Next intJ
Next intI
Close
Open "abc.txt" For Random As #1
For intJ = 1 To 4
For intI = 1 To 4
Get #1, intI * intJ, recAbc
arrA(intI, intJ) = recAbc.A
Next intI
Next intJ
Text1.Text = arrA(3, 2)
Close
For intI = 1 To 4
For intJ = 1 To 4
Print Tab(intJ * 3); Format(arrA(intI, intJ), "###");
Next intJ
Next intI
End Sub
(1)程序中的“abc.txt”文件在第壹次打開時是按( )方式打開的
A)順序文件讀 B)順序文件寫 C)隨機文件 D)二進制文件
(2)數組arrA完成賦值以後,數組元素arrA(3,2)的值為( )
A)1 B)7 C)6 D)4
(3)程序運行後在窗體上輸出的結果為( )
A)1 2 3 4 B)1 2 3 4
5 6 7 8 2 4 6 8
9 10 11 12 3 6 9 12
13 14 15 16 4 8 12 16
C)1 5 9 13 D)1 2 3 4
2 6 10 14 2 3 4 5
3 7 11 15 3 4 5 6
4 8 12 16 4 5 6 7
三、程序填空題(2分/空,***30分)
1、下面函數的功能是:求變量s(s=a+aa+aaa+aaaa+….)的值,其中,a為壹個0~9的數字,總***累積a項,例如:
當a=3時,s=3+33+333 (***累積3項)
當a=5時,s=5+55+555+5555+55555(***累積5項)
請完善程序:
Public Function calc(a As Double)
s = a
t = a
For i = 2 To ①
t = ②
s = s + t
Next i
Print s
End Function
2、下面程序是用“冒泡”法將數組a中的10個整數按升序排序,並將排好序的結果顯示在文本框中,請完善程序。
Option Explicit
Option Base 1
Private Sub Form_Click()
①
Dim i%, j%, t%
Text1.Text = ""
a = Array(345, 3, 65, 24, 765, 32, 56, 421, 54, 235)
For i = 1 To 9
For j = i To ②
If ③ Then
t = a(j)
④
a(j + 1) = t
End If
Next j
Next i
For i = 1 To 10
Text1.Text = Text1.Text & " " & a(i)
Next i
End Sub
3、下面程序的功能是將壹個整數轉化為數值字符串,例如123轉換為”+123“。
Private Sub NtoC(ByVal n!, strc As String)
Dim sign As Boolean, i%, a%, count%, temp%(100)
sign = False
If n < 0 Then sign = True: n = ①
Do While n > 0
a = ②
n = n \ 10
count = count + 1
temp(count) = a
Loop
If sign Then strc = "-" Else strc = "+"
For i = count To 1 Step -1
strc = ③
Next i
End Sub
4、從鍵盤上輸入任意壹個整數x,將其插入到壹個按升序排列的整數數組中,並保證數組在插入之後仍按原來的升序排列,請填寫完整程序。
Option Explicit
Option Base 1
Const n = 10
Private Sub Form_Click()
Dim a
Dim i As Integer, j As Integer, x As Integer
a = Array(1, 3, 4, 5, 9, 15, 22, 28, 30, 60)
For i = 1 To n
Print a(i)
Next i
x = InputBox("輸入壹個整數x:")
ReDim Preserve a(n + 1)
For i = n To 1 Step -1
If ① Then
a(i + 1) = a(i)
Else
②
Exit For
End If
Next i
③
For i = 1 To n + 1
Print a(i) & " ";
Next i
End Sub
5、下面程序實現當“單擊”命令按鈕cmdRead從文件”List.txt“中讀入行數據並寫入壹個列表框中,文件中的每壹行在列表框中占壹個選項,請完善程序。
Private Sub cmdRead_Click()
Dim strList As String
Dim intFileNum As Integer
intFileNum = FreeFile()
Open App.Path + "\List.txt" For Input As #intFileNum
do until ①
Line Input #intFileNum, strList
List1.AddItem ②
Loop
③
End Sub