![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
2005秋江蘇省計(jì)算機(jī)等級(jí)考試二級(jí)VB語(yǔ)言上機(jī)試卷(1) |
江蘇高等學(xué)校非計(jì)算機(jī)專業(yè)學(xué)生 計(jì)算機(jī)基礎(chǔ)知識(shí)和應(yīng)用能力等級(jí)考試上機(jī)試卷(2005秋) 二級(jí) Visual Basic語(yǔ)言(試卷代號(hào)VB01) (本試卷完成時(shí)間 70分鐘) 【考試須知】 1. 改錯(cuò)題的界面不作要求,主要用來(lái)調(diào)試程序,若題目中有參考界面,則僅作參考; 2. 考試結(jié)束后,文件必須存放在指定位置,否則適當(dāng)扣分;考試盤(pán)中若無(wú)指定文件,則不予評(píng)分; 3. 程序代碼書(shū)寫(xiě)應(yīng)呈鋸齒形。 一、改錯(cuò)題(14分) 【題目】本程序的功能是:找出2~10000之間可以表示成2²-1形式的素?cái)?shù).本題程序界面見(jiàn)圖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. 新建工程,輸入上述代碼,改正程序中的錯(cuò)誤; 2. 改錯(cuò)時(shí),不得增加或刪除語(yǔ)句,但可適當(dāng)調(diào)整語(yǔ)句位置; 3. 將窗體文件和工程文件分別命名為F1和P1,并保存到軟盤(pán)A的根目錄下. 二、編程題(26分) 【題目】將1~9這9個(gè)數(shù)字順序排列圍成一圈,從中任意一個(gè)數(shù)字開(kāi)始,依次將其分成三段,每段數(shù)字連在一起算一個(gè)數(shù),得到一個(gè)2位數(shù)、一個(gè)3位數(shù)和一個(gè)4位數(shù),將這三個(gè)數(shù)相加,使其和數(shù)能被77整除.編寫(xiě)一個(gè)能找出這三個(gè)數(shù)的程序. 【編程要求】 1. 程序參考界面如圖2所示,編程時(shí)不得增加或減少界面對(duì)象或改變對(duì)象的種類,窗體及界面元素大小適中,且均可見(jiàn); 2. 單擊“運(yùn)行”按鈕,找出符合條件的三個(gè)數(shù),并將它們顯示在文本框中; 3. 單擊“清理”按鈕,則將文本框清空,并將焦點(diǎn)設(shè)置在“運(yùn)行”按鈕上;單擊“結(jié)束”按鈕,結(jié)束程序運(yùn)行; 4. 程序中必須包含一個(gè)將數(shù)字分段,得到一個(gè)2位數(shù)、一個(gè)3位數(shù)和一個(gè)4位數(shù)的通用過(guò)程. 【要求】 將窗體文件和工程文件分別命名為F2和P2,并保存到軟盤(pán)A的根目錄下.
圖1 圖2 |