![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
2005秋江蘇省計算機等級考試二級VB語言上機試卷(1) |
江蘇高等學(xué)校非計算機專業(yè)學(xué)生 計算機基礎(chǔ)知識和應(yīng)用能力等級考試上機試卷(2005秋) 二級 Visual Basic語言(試卷代號VB01) (本試卷完成時間 70分鐘) 【考試須知】 1. 改錯題的界面不作要求,主要用來調(diào)試程序,若題目中有參考界面,則僅作參考; 2. 考試結(jié)束后,文件必須存放在指定位置,否則適當(dāng)扣分;考試盤中若無指定文件,則不予評分; 3. 程序代碼書寫應(yīng)呈鋸齒形。 一、改錯題(14分) 【題目】本程序的功能是:找出2~10000之間可以表示成2²-1形式的素數(shù).本題程序界面見圖1. Option Explicit Private Sub Command1_Click() Dim Exp As Integer, Idx As Integer For Idx = 2 10000 If Mersenne(Idx, Exp)Then If Prime(Idx)Then List1.AddItem Idx &″=″&2&″^″&Exp&″-1″ End If Exp = 0 End If Next Idx End Sub Private Function Mersenne(N As Integer,Exp As Integer)As Boolean Dim M As Integer,Ex As Long M=N Ex=1 Do While M>Ex Exp=Exp+1 Ex=Ex*2 Loop If M=Ex Then Mersenne=true End If End function Private Function Prime(N As Integer) As Boolean Dim K As Integer Prime=True For K =2 To Sqr(N) If N Mod K =0 Then Exit Function Next K End Function 【要求】 1. 新建工程,輸入上述代碼,改正程序中的錯誤; 2. 改錯時,不得增加或刪除語句,但可適當(dāng)調(diào)整語句位置; 3. 將窗體文件和工程文件分別命名為F1和P1,并保存到軟盤A的根目錄下. 二、編程題(26分) 【題目】將1~9這9個數(shù)字順序排列圍成一圈,從中任意一個數(shù)字開始,依次將其分成三段,每段數(shù)字連在一起算一個數(shù),得到一個2位數(shù)、一個3位數(shù)和一個4位數(shù),將這三個數(shù)相加,使其和數(shù)能被77整除.編寫一個能找出這三個數(shù)的程序. 【編程要求】 1. 程序參考界面如圖2所示,編程時不得增加或減少界面對象或改變對象的種類,窗體及界面元素大小適中,且均可見; 2. 單擊“運行”按鈕,找出符合條件的三個數(shù),并將它們顯示在文本框中; 3. 單擊“清理”按鈕,則將文本框清空,并將焦點設(shè)置在“運行”按鈕上;單擊“結(jié)束”按鈕,結(jié)束程序運行; 4. 程序中必須包含一個將數(shù)字分段,得到一個2位數(shù)、一個3位數(shù)和一個4位數(shù)的通用過程. 【要求】 將窗體文件和工程文件分別命名為F2和P2,并保存到軟盤A的根目錄下.
圖1 圖2 |