![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
2005年秋vb上機(jī)(7) |
江蘇省高等學(xué)校非計算機(jī)專業(yè)學(xué)生 計算機(jī)基礎(chǔ)知識和應(yīng)用能力等級考試上機(jī)試卷(2005秋) 二級Visual Basic語言(試卷代號VB07) (本試卷完成時間 70分鐘) [考試須知] 1. 改錯題的界面不作要求,主要用來調(diào)試程序,若題目中有參考界面,則僅作參考; 2. 考試結(jié)束后,文件必須存放在指定位置,否則適當(dāng)扣粉;考試盤中若無指定文件,則不予評分; 3. 程序代碼書寫應(yīng)呈鋸齒形。 一、改錯題(14分) [題目]下面程序的功能是:在140000至160000之間找出滿足以下條件的六位數(shù),該數(shù)分別乘以3與4得到的兩個六位數(shù),也由同樣六個數(shù)字組成,只是排列次序不同,本題程序界面如圖1。 Option Explicit Private Sub Command_Click() Dim M(0 To 9) As Integer, N(0 To 9) As Integer, F As Long, P As Long Dim I As Integer List1.AddItem” F ” & ” F*3 ” & ” F*4 ” For F=140000 To 160000 Erase M Call Analyze(F,M) Erase N For I=3 To 4 P=F*I If Len(CSte(P))=6 Then Call Analyze(P,N) If Not Compare(M,N) Then Exit For Eles Exit For End If Next I If I>4 Then List.AddItem F & Str(F*3)&Str(F*4) Next F End Sub Private Sub Analyze(N As Long, An() As Interger) Dim S As String, I As Intege, Idx As Integer S=Str(N) For I=I To Len(S) Idx=Mid(S,I,I) An(Idx)=An(Idx)+1 Next I End Sub Private Function Compara(a() As Integer, B() As Interger) As Boolean Dim I As Integer Compare=True For I=0 To 9 If a(I) <> B(I) Then Exit Function Next I End Function [要求] 1. 新建工程,輸入上述代碼,改正程序中的錯誤; 2. 改錯時,不得增加或刪除語句,但可適當(dāng)調(diào)整語句位置; 3. 將窗體文件和工程文件分別命名為F1和P1,并保存到軟盤A的根目錄下。 二、編程題(26分) [題目]編寫程序找出滿足 5M+7M=128的兩個素數(shù)M和N。[編程要求] 1. 程序參考界面如圖2所示,編程時不得增加或減少界面對象或改變對象的種類,窗體及界面元素大小適中,且均可見; 2. 單擊“開始”按鈕,求出滿足條件的M和N值,并按圖示格式輸出到文本框中; 3. 單擊“清除”按鈕,則將文本框清空,焦點置于“開始”按鈕上;單擊“結(jié)束”按鈕, 結(jié)束程序運(yùn)行; 4. 程序中必須包含一個判斷某數(shù)是否為素數(shù)的通用過程。 [要求] 將窗體文件和工程文件分別命名為F2和P2,并保存到軟盤A的根目錄下
圖1 圖 2 |