【考试须知】
1.改错题的界面不作要求,主要用来调试程序,若题目中有参考界面,则仅作参考。 2.考试结束后,文件必须存放在指定位置,否则适当扣分;考试盘中若无指定文件,则不予评分。
3.程序代码书写应呈锯齿形。
改错题(14分)
【题目】下面程序的功能是:找出100以内的所有因子(包括1和本身)之和为一个完全平方数的正整数,并按图中所示格式将结果显示在列表框中
Option Explicit Option Base 1
Private Sub Command1_Click() Dim i As Integer, j As Integer
Dim F() As Integer, sum As Integer Dim s As String For i = 3 To 100
If Fac(i, F, sum) Then sum =0 s = i & \":\"
For j = 1 To UBound(F) s = s & F(j) & \"+\" Next j
List1.AddItem s & F(j) & \"=\" & sum & \"^2\" End If Next i End Sub
Private Function Fac(k As Integer, A() As Integer, sum As Integer) As Boolean Dim n As Integer, j As Integer For n = 1 To k
If k Mod n = 0 Then j = j + 1 ReDim A(j) A(j) = n
sum = sum + n End If Next n
If sum = Int(Sqr(sum)) ^ 2 Then Fac = True End Function 【要求】
新建工程,输入上述代码,改正程序中的错误:
2.改错时,不得增加或删除语句,但可适当调整语句位置: 3.将窗体文件和工程文件分别命名为F1.frm和P1.vbp,并保存到D盘学号姓名期末答卷目录下。
二、编程题(26分)
下列程序是求任意排列数的逆序数。所谓逆序数就是排列数中每一位元素比左边所有元素小的个数。例如:261,2排在首位,左边没有元素,它的逆序数为0;6左边没有比它大的元素,逆序数为0;1左边的2和6元素比它大,它的逆序数为2;5左边只有6元素比它大,它的逆序数为1;4左边的5和6元素比它大,它的逆序数为2,统计得排列数261的逆序数为0+0+2+1+2=5。
【编程要求】
1.程序参考界面如图2所示,编程时不得增加或减少界面对象或改变对象的种类,窗体及界面元素大小适中,且均可见:
2.按“计算”按钮,则将初值显示在“排列数”文本框中,并按题目要求进行,再将结果显示在“逆序数”文本框中(如图2所示):
图2
3.程序中至少要包含一个通用过程。
【要求】
将窗体文件和工程文件分别命名为F2.frm和P2.vbp,并保存到D盘学号姓名期末答卷目录下。
关闭VB后,将学号姓名期末答卷文件夹压缩成同名的RAR文件在作业提交中提交
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- huatuo0.com 版权所有 湘ICP备2023021991号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务