求编程C++ 歌手

来源:百度知道 编辑:UC知道 时间:2024/07/01 04:08:25
现有m个歌手(姓名、抽签号码),n位评委(姓名和代号)。每个歌手演唱之后,评委打出n 个分数。去掉一个最高分,去掉一个最低高分,求出其余n-2个分数的平均值,是歌手最后得分。
评出一等奖1名;二等奖3名;三等奖5名。

能够输出显示所有原始数据。
能够输出显示排序后的所有歌手得分情况。
排序要求采用‘快速排序’或者‘堆排序’方法 。
能够输出显示(一等奖1名;二等奖3名;三等奖5名。)获奖歌手信息。

#include <iostream.h>

const int LEN=30,M=100,N=100;
typedef struct
{
int num;//抽签号码
char name[LEN];//姓名
float score;//得分
} player;

player players[M];//歌手信息
int a[M][N];//评委打分信息
int m,n;//歌手和评委数量

//输入歌手信息和评委打分信息
void input(void)
{
int i,j;

cout<<"歌手数量:";
cin>>m;
cout<<"评委数量:";
cin>>n;
for(i=0;i<m;i++)
{
players[i].num=i+1;
cout<<"第"<<i+1<<"个歌手的姓名:";
cin>>players[i].name;
cout<<"第"<<i+1<<"个歌手的评委打分:";
for(j=0;j<n;j++)
{
cin>>a[i][j];
}
}
}

//求平均值(去掉一个最高分,去掉一个最低高分,求出其余n-2个分数的平均值
void calculate(vo