2005秋江苏省计算机等级考试二级VB语言上机试卷(1) |
江苏高等学校非计算机专业学生 计算机基础知识和应用能力等级考试上机试卷(2005秋) 二级 Visual Basic语言(试卷代号VB01) (本试卷完成时间 70分钟) 【考试须知】 1. 改错题的界面不作要求,主要用来调试程序,若题目中有参考界面,则仅作参考; 2. 考试结束后,文件必须存放在指定位置,否则适当扣分;考试盘中若无指定文件,则不予评分; 3. 程序代码书写应呈锯齿形。 一、改错题(14分) 【题目】本程序的功能是:找出2~10000之间可以表示成2²-1形式的素数.本题程序界面见图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. 改错时,不得增加或删除语句,但可适当调整语句位置; 3. 将窗体文件和工程文件分别命名为F1和P1,并保存到软盘A的根目录下. 二、编程题(26分) 【题目】将1~9这9个数字顺序排列围成一圈,从中任意一个数字开始,依次将其分成三段,每段数字连在一起算一个数,得到一个2位数、一个3位数和一个4位数,将这三个数相加,使其和数能被77整除.编写一个能找出这三个数的程序. 【编程要求】 1. 程序参考界面如图2所示,编程时不得增加或减少界面对象或改变对象的种类,窗体及界面元素大小适中,且均可见; 2. 单击“运行”按钮,找出符合条件的三个数,并将它们显示在文本框中; 3. 单击“清理”按钮,则将文本框清空,并将焦点设置在“运行”按钮上;单击“结束”按钮,结束程序运行; 4. 程序中必须包含一个将数字分段,得到一个2位数、一个3位数和一个4位数的通用过程. 【要求】 将窗体文件和工程文件分别命名为F2和P2,并保存到软盘A的根目录下.
图1 图2 |