求vb大神解答这道题

2025-04-27 19:20:57
推荐回答(1个)
回答1:

Private Sub Form_Click()
  Dim intMax As Integer, intMaxID As Integer, intMin As Integer, intMinID As Integer
  Dim intSum As Integer, intCount As Integer, intPassCount As Integer
  intMax = 0: intMin = 100
  For i = 1 To Len(Text1.Text) Step 2
    If Asc(Mid(Text1.Text, i, 1)) >= 48 And Asc(Mid(Text1.Text, i, 1)) <= 57 Then
      intCount = intCount + 1
      If Val(Mid(Text1.Text, i, 2)) >= 60 Then intPassCount = intPassCount + 1
      intSum = intSum + Val(Mid(Text1.Text, i, 2))
      If Val(Mid(Text1.Text, i, 2)) > intMax Then intMax = Val(Mid(Text1.Text, i, 2)): intMaxID = intCount
      If Val(Mid(Text1.Text, i, 2)) < intMin Then intMin = Val(Mid(Text1.Text, i, 2)): intMinID = intCount
    End If
  Next i
  Text2.Text = intMax & "分,学号" & intMaxID
  Text3.Text = intMin & ",学号" & intMinID
  Text4.Text = Format(intSum / intCount, "0.00")
  Text5.Text = intPassCount & ",及格率:" & Format(intPassCount / intCount * 100, "0.00") & "%"
End Sub