📄 dafen.txt
字号:
程序源代码如下:
Public n As Integer
Public gszh As Integer
Public m As Integer
Private Sub exitcmd_Click()
'单击结束
End
End Sub
Private Sub Form_Load()
'设置按钮的可用和不可用
pwnumcmd.Enabled = True
exitcmd.Enabled = True
xsnumcmd.Enabled = False
pwdfcmd.Enabled = False
Text1.Text = ""
End Sub
Private Sub pwdfcmd_Click()
pwnumcmd.Enabled = False
exitcmd.Enabled = True
xsnumcmd.Enabled = False
Static number() As Single
Dim xszf() As Single
Dim xsname() As String
ReDim xsname(m)
ReDim xszf(m)
ReDim number(n)
Dim msg As String
Dim msgtitle As String
For k = 1 To m
xsname(k) = InputBox("请输入选手姓名")
msg = "请按序输入评委的打分"
msgtitle = "评委打分"
'打印评委对选手的得分情况
Text1.Text = Text1.Text & xsname(k) & "得分情况:" & Chr(13) & Chr(10) & Chr(13) & Chr(10)
'列出每位评委给选手的打分情况
For i = 1 To n
number(i) = Val(InputBox(msg, msgtitle))
Text1.Text = Text1.Text & "第 " & i & "位评委打分为: " & number(i) & Chr(13) & Chr(10)
Next i
'对选手按高到低进行排序并打印
For i = n To 2 Step -1
For j = 1 To i - 1
If number(j) > number(j + 1) Then
t = number(j + 1)
number(j + 1) = number(j)
number(j) = t
End If
Next j
Next i
Text1.Text = Text1.Text & "去掉最低分:" & number(1) & Chr(13) & Chr(10)
Text1.Text = Text1.Text & "去掉最高分:" & number(n) & Chr(13) & Chr(10)
'下面计算选手的总得分和平均得分
Sum = 0
For i = 2 To n - 1
Sum = Sum + number(i)
Next i
Text1.Text = Text1.Text & "选手" & xsname(k) & "的总得分为:" & Sum & Chr(13) & Chr(10)
Text1.Text = Text1.Text & "选手" & xsname(k) & "平均得分为:" & Sum / (n - 2) & Chr(13) & Chr(10) & Chr(13) & Chr(10)
xszf(k) = Sum
If k < m Then
MsgBox ("本次成绩输入完毕,请输入下一个选手姓名和得分")
End If
Next k
For i = m To 2 Step -1
For j = 1 To i - 1
If xszf(j) > xszf(j + 1) Then
t = xszf(j + 1)
sname = xsname(j + 1)
xszf(j + 1) = xszf(j)
xsname(j + 1) = xsname(j)
xszf(j) = t
xsname(j) = sname
End If
Next j
Next i
Text1.Text = Text1.Text & "选手名次如下:" & Chr(13) & Chr(10) & Chr(13) & Chr(10)
For i = 1 To m
Text1.Text = Text1.Text & "第" & i & "名:" & xsname(m - i + 1) & "得分为: " & xszf(m - i + 1) & Chr(13) & Chr(10)
Next i
pwdfcmd.Enabled = False
MsgBox ("输入完毕,请查看选手得分和排名")
End Sub
Private Sub pwnumcmd_Click()
'输入评委的数量
Dim pwsl As String
Dim tjjl As String
pwsl = "评委数量不得少于3人"
tjjl = MsgBox(pwsl, vbOKOnly, "提示信息")
Do
n = Val(InputBox("请输入评委的数量:"))
If n < 3 Then
MsgBox ("评委不得少于三人")
End If
If tjjl = vbCancel Then
Exit Sub
End If
Loop Until n > 2
Text1.Text = "本次大赛共有" & n & "名评委;"
xsnumcmd.Enabled = True
End Sub
Private Sub startcmd_Click()
Text1.Text = ""
pwnumcmd.Enabled = True
End Sub
Private Sub xsnumcmd_Click()
m = Val(InputBox("请输入选手的数量:"))
If m < 1 Then
MsgBox ("输入有误,最少要有一位选手,请重新输入")
Exit Sub
End If
Text1.Text = Text1.Text & m & "名" & "选手。" & Chr(13) & Chr(10) & Chr(13) & Chr(10) & Chr(13) & Chr(10)
pwdfcmd.Enabled = True
xsnumcmd.Enabled = False
pwnumcmd.Enabled = False
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -