c语言编个排序的程序

来源:百度知道 编辑:UC知道 时间:2024/07/09 00:45:53
题目一:某大赛有n(n>=5)个选手参赛,m(m>=4)个评委依次为参赛的选手评判打分;最高10分,最低0分。统分规则为:每个选手所得的m个评分中,去掉一个最高分,去掉一个最低分,然后平均该选手的最后得分。
根据n个选手的最后得分从高到低排出名次表,以便确定获奖名单。

我这里正好有这个!
但稍微不同,你只要改一下数字就好了!

一、 大奖赛现场统分
已知:某大奖赛有n个选手参赛,m(m>2)个评委为依次参赛的选手评判打分:最高10分,最低0分。统分规则为:每个选手所得的m个得分中,去掉一个最高分,去掉一个最低分,然后平均为该选手的最后得分。要求编程:
(1)根据n个选手的最后得分,从高到低排出名次表,以便确定获奖名单;
(2)根据各选手的最后得分与各评委给该选手所评分的差距,给各个评委评分的准确性一个定量的评价。

/*
变量说明:
n:n个学生
m:m个评委
score[100][20]:最多可存20个评委对100位选手的打分
num[100]:保存选手序号
sum[100]:保存每位选手的平均分
ping[20]:保存对评委打分能力的指数 用它的评分减去各先手平均分之差的绝对值。
pingnum[20]:保存评委的序号
lower:保存最低分
*/

#include<stdio.h>
#include<math.h>

void main()
{
int i,j,n,m,sum[100],ping[20],pingnum[20],num[100],p=0;
int score[100][20],lower,temp=0;
printf("enter n m:");
scanf("%d",&n);
scanf("%d",&m);

for(i=0;i<m;i++) /*对评委指数和评委序号进行初始化*/
{
ping[i]=0;
pingnum[i]=i+1;
}

for(i=0;i<n;i++) /*对选手序号进行初始化*/
num[i]=i+1;

for(i=0