实验一
一、 实验题目
编写一个歌手大奖赛的记分、评分系统。
二、 系统功能介绍
1、程序的主要功能是八个评委给八个歌手评分,最后求出参赛选手的最高分、
最低分和最后得分;待所有选手参赛完毕后,显示每一位歌手的得分及相应评
委的打分情况,各选手的最后得分从高到低排序。
2、使用本系统时,首先输入歌手的编号,然后进行评委打分,最后点击评分对
选手进行评分,同时点击查看当前记录可以查看当前选手的得分情况,当把八
个选手的分数评完以后可以查看最后的排名情况以及所有的评分记录。
三、程序中重要的过程、函数、变量的说明
1、用一个 textbox singer 的内容作为选手的编号,用八个 textbox mark1—mark8
的内容作为评委的打分分数,用 result(9)数组存放一位选手的编号与分数,用
textbox max、 min 、ave 显示最高分、最低分和最后得分。
2、求选手的最高分、最低分、最后的分程序代码主要是在pingfen 的click事件
中:
MaxMark = Val(mark1.Text)
MinMark = Val(mark1.Text)
For m = 1 To 8 '求最大值,最小值,和平均值
If MaxMark < Marks(m) Then
MaxMark = Marks(m)
End If
If MinMark > Marks(m) Then
MinMark = Marks(m)
End If
Smark = Smark + Marks(m)
Next
Smark = Smark - MaxMark - MinMark
AveMark = Smark / 6
max.Text = MaxMark '最大值
min.Text = MinMark '最小值
ave.Text = AveMark '平均值
3、将所有评委对所有选手的打分情况记录在一个二维数组 results (7,9) 中。
4、在评分结束后显示每一位歌手的得分及相应评委的打分情况,各选手的最后
得分从高到低排序,主要是按照选手的得分情况对二维数 results (7,9)进行排序,
最后显示结果,排序的过程为:
Private Sub sort() '排序过程
Dim i, j, m As Integer
Dim t As Single
For i = 7 To 0 Step -1
For j = 0 To 6
If results(j, 9) < results(j + 1, 9) Then
For m = 0 To 9