Private marrAnswer(9) As Integer
Private Sub cmdResult_Click()
Dim iMark As Integer
Dim i As Integer
Dim arrAns() As String
If CheckInput Then
' 将用户输入的答案保存到数组当中
arrAns = Split(txtAnswer.Text, ",")
' 将用户输入的答案与正确答案进行比较,并计算得分
For i = 0 To UBound(marrAnswer)
If marrAnswer(i) = CInt(arrAns(i)) Then
iMark = iMark + 1
End If
'***
' 这里可以添加一个将错误答题和正确答案进行统计的功能,以增加程序的功能性
' 最终可将错误题目与正确答案进行展示
'***
Next i
' 显示最后的得分
lblMark.Caption = iMark &"分"
End If
End Sub
Private Sub Form_Load()
Dim i As Integer
Dim iVar1, iVar2 As Integer
For i = 1 To 10
' 获得两个加数
iVar1 = Int((100 - 0 + 1) * Rnd + 0)
iVar2 = Int((100 - 0 + 1) * Rnd + 0)
' 将给出题目的计算结果保存到数组当中
marrAnswer(i - 1) = iVar1 + iVar2
' 将题目输出到界面当中
picQuestion.Print i &". " &iVar1 &" + " &iVar2 &" = ?"
Next i
End Sub
’3个label,2个commandPrivate Sub Command1_Click()
Dim s, i, j, arr(1 To 10), t, sum
For i = 1 To 10
s = InputBox("输入评分(0-10分):", "第" &i &"个分数")
If IsNumeric(s) Then
s = Val(s)
If s <0 Or s >10 Then
i = i - 1
Else
arr(i) = s
End If
Else
i = i - 1
End If
Next
For i = 1 To 9
For j = i + 1 To 10
If arr(i) >arr(j) Then
t = arr(i): arr(i) = arr(j): arr(j) = t
End If
Next
Next
For i = 2 To 9
sum = sum + arr(i)
Next
Label1.Caption = "最高分为:" &arr(10)
Label2.Caption = "最低分为:" &arr(1)
Label3.Caption = "选手最后得分:" &Round(sum / 8, 1)
End Sub
Private Sub Command2_Click()
Unload Me
End Sub
Private Sub Form_Load()
Command1.Caption = "评分"
Command2.Caption = "结束"
With Label1
.Caption = ""
.AutoSize = True
End With
With Label2
.Caption = ""
.AutoSize = True
End With
With Label3
.Caption = ""
.AutoSize = True
End With
End Sub
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)