1、江苏计算机等级考试二级 Visual+BASIC 上机真题 2011 年 3 月及答案解析(总分:40.00,做题时间:70 分钟)一、考试说明:(总题数:1,分数:0.00)1.改错题(14 分) 【题目】 本程序的功能是:找出 100999 之间的十进制数为升序数,且其对应的八进制数也是升序数的整数。所谓升序数,是指该数的十位数字值大于个位数字值,百位数字值大于十位数字值。 Option Explicit Private Sub CmdFind_Click() Dim n As Integer,s8 As String For n=100 To 999 s8=d2Q(n) If sx(n)
2、 And sx(Val(s8) Then List1.AddItem n 单击“清除“按钮,将 3 个文本框清空,焦点置于“处理“按钮上;单击“结束“按钮,结束程序运行。 3.程序中应定义一个名为 sort 的通用过程,用于对一维数组按从小到大排序。 【要求】 将窗体文件和工程文件分别命名为 F2 和 P2,并保存到 T 盘根目录下。(分数:26.00)_江苏计算机等级考试二级 Visual+BASIC 上机真题 2011 年 3 月答案解析(总分:40.00,做题时间:70 分钟)一、考试说明:(总题数:1,分数:0.00)1.改错题(14 分) 【题目】 本程序的功能是:找出 100999
3、 之间的十进制数为升序数,且其对应的八进制数也是升序数的整数。所谓升序数,是指该数的十位数字值大于个位数字值,百位数字值大于十位数字值。 Option Explicit Private Sub CmdFind_Click() Dim n As Integer,s8 As String For n=100 To 999 s8=d2Q(n) If sx(n) And sx(Val(s8) Then List1.AddItem n 单击“清除“按钮,将 3 个文本框清空,焦点置于“处理“按钮上;单击“结束“按钮,结束程序运行。 3.程序中应定义一个名为 sort 的通用过程,用于对一维数组按从小到大
4、排序。 【要求】 将窗体文件和工程文件分别命名为 F2 和 P2,并保存到 T 盘根目录下。(分数:26.00)_正确答案:( Option Explicit Option Base 1 Private Sub CmdRun_Click() Dim a() As Integer,n As Integer,i As Integer Dim sum As Integer,av As Integer,k As Integer n=InputBox(“输入数据个数:“, ,12) ReDim a(n) For i=1 To n a(i)=Int(Rnd*41)+10 Text1=Text1 & Str
5、(a(i) Next i Call sort(a) For i=1 To UBound(a) Step 3 sum=0 For k=i To i+2 sum=sum+a(k) Next k av=sum/3 For k=1 To 3 Text3=Text3 & Str(av) Next k Next i End Sub Private Sub sort(a()As Integer) Dim i As Integer,j As Integer,t As Integer For i=1 To UBound(a)-1 Forj=1 To UBound(a)-i If a(j)a(j+1)Then t=a(j) a(j)=a(j+1) a(j+1)=t End If Next j Next i For i=1 To UBound(a) Text2=Text2 & Str(a(i) Next i End SUb Private Sub CmdClear_click() Text1=“ Text2=“ Text3=“ CmdRun.SetFocus End Sub Private Sub CmdExit_click() End End Sub)解析: