江苏省高等学校非计算机专业学生
计算机基础知识和应用能力等级考试上机试卷(2010春)
二级 Visual Basic语言 (试卷代号VB03)
(本试卷完成时间 70分钟)
【考试须知】
1. 改错题的界面不作要求,主要用来调试程序,若题目中有参考界面,则仅作参考; 2. 考试结束后,文件必须存放在指定位置,否则适当扣分;考试盘中若无指定文件,则不
予评分;
3. 程序代码书写应呈锯齿形。 一、改错题(14分)
【题目】本程序的功能是,找出指定数据范围内所有其平方数为升序数的整数。所谓升序数是指从最高位到最低位的数字依次递增的整数。例如3589就是一个升序数。 Option Explicit
Private Sub Command1_Click() Dim n As Integer, k As Integer For n = 20 To 180 k = n ^ 2 If sx(k) Then
List1.AddItem n & \ End If Next n
If List1.ListCount = 0 Then List1.AddItem \无升序平方数\End Sub
Private Function sx(ByVal n As Integer) As Boolean 'err 无ByVal Dim num() As Integer, k As Integer, p As Integer Dim i As Integer Do
p = n Mod 10 k = k + 1
ReDim Preserve num(k) num(k) = p n = n \\ 10
Loop Until n = 0 'err Until n < 0 For i = 2 To UBound(num)
If num(i) >= num(i - 1) Then Exit Function 'err Exit For Next i sx = True End Function 【要求】
1. 新建工程,输入上述代码,改正程序中的错误;
2. 改错时,不得增加或删除语句,但可适当调整语句位置;
3. 将窗体文件和工程文件分别命名为F1和P1,并保存到T盘的根目录下。 二、编程题(26分)
2008年春VB09-1
【题目】编写程序,删除字符串中重复字符,且不改变其它字符的排列顺序;并给出每个字符在原字符串中出现的次数。 【编程要求】
1. 程序参考界面如图所示,编程时不得增加或减少界面对象或改变对象的种类,窗体及界
面元素大小适中,且均可见;
2. 运行程序,首先在文本框1中输入测试字符串,然后按“运行”按钮,进行相关处理,
在文本框2中,显示删除重复字符后的结果字符串,在列表框中按图示输出每个字符在原字符串中出现的次数;按“清除”按钮,将两个文本框和列表框清空,焦点置于文本框1上;
3. 程序中应定义一个通用过程,用于从字符串中删除重复字符,并统计该字符在原字符串
中出现的次数。(提示:计数器初值为1,删除一个重复字符,计数器加1)
【要求】
将窗体文件和工程文件分别命名为F2和P2,并保存到T盘的根目录下。
2008年春VB09-2