vb编程问题,求解答

某单位开运动会,共有10人参加男子100米短跑,运动员号和成绩如下:
207号 14.5秒 077号 15.1秒
156号 14.2秒 231号 14.7秒
453号 15.2秒 276号 13.9秒
096号 15.7秒 122号 13.7秒
339号 14.9秒 302号 14.5秒
编写程序,按成绩排出名次,并按如下格式输出:
名次 运动员号 成绩
1 …… ……
2 …… ……
3 …… ……
… …… ……
10 …… ……

Const N = 10
Private Type Ydy
    bh As String
    cj As Single
End Type

Private Sub Form_Click()
    Dim a(1 To N) As Ydy
    Dim t As Ydy
    '输入信息和成绩
    For i = 1 To N
        a(i).bh = InputBox("请输入第" & i & "位运动员编号", "输入运动员编号和成绩")
        a(i).cj = Val(InputBox("请输入第" & i & "位运动员成绩(秒)", "输入运动员编号和成绩"))
    Next i
    '按成绩排序
    For i = 1 To N - 1: For j = i + 1 To N
        If a(i).cj > a(j).cj Then
            t = a(i): a(i) = a(j): a(j) = t
        End If
    Next j, i
    '输出排序后的信息
    Print "名次", "运动员号", "成绩"
    For i = 1 To N
        Print i, a(i).bh & "号", a(i).cj & "秒"
    Next i

End Sub

温馨提示:答案为网友推荐,仅供参考
相似回答