vb题库建设代码怎么写?

来源:百度知道 编辑:UC知道 时间:2024/06/24 04:20:01
从100个题中随机抽50个,重点是怎样把题目编号抽出

输出的a(i)就是随机题号,不会出现重复

Private Sub Command1_Click()
Dim a
a = Split(rndNum(1, 100, 50), " ")
For i = 0 To UBound(a)
Print a(i),
If (i + 1) Mod 5 = 0 Then Print
Next
End Sub

Private Function rndNum(ByVal nStart As Integer, ByVal nEnd As Integer, ByVal nNum As Integer) As String
Dim a() As Integer
Dim m As Integer, n As Integer, i As Integer, j As Integer, k As Integer, t As String
m = nEnd: n = nStart: k = nNum: rndNum = ""
If m < n Then MsgBox "起始值小于终止值!": Exit Function
If k > m - n + 1 Then MsgBox "数据区间太小!": Exit Function

ReDim a(1 To k)
For i = 1 To k
a(i) = Int(Rnd * (m - n + 1)) + n
For j = 1 To i - 1
If a(i) = a(j) Then i = i - 1: Exit For
Next
Next

For i = 1 To k
t = a(i) & Space(1)
rndNum = rndNum & t
Next

rndNum = Mid(rndNum, 1, Len(rndNum) - 1)
End Function

还有将文本