江苏省等级考试二级 VB 上机试卷 2025 年(秋)及参考答案 【题目 1】本程序的功能是:找出 2~10000 之间可以表示成 2²-1 形式的素数
本题程序界面见图 1
答: 源程序: Option Explicit Private Sub Command1_Click() Dim Exp As Integer, Idx As Integer For Idx = 2 To 10000 If Mersenne(Idx, Exp) Then If Prime(Idx) Then List1
AddItem Idx & " =" & 2 & "^" & Exp & "-1" End If End If Exp = 0 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 - 1 Then Mersenne = True End If End Function Private Function Prime(N As Integer) As Boolean Dim K As Integer For K = 2 To Sqr(N) If N Mod K = 0 Then Exit Function Next K Prime = True End Function 【题目 2】将 1~9 这 9 个数字顺序排列围成一圈,从中任意一个数字开始,依次将其分成三段,每段数字连在一起算一个数,得到一个 2 位数、一个 3 位数和一个 4 位数,将这三个数相加,使其和数能被 77 整