int k,i,j,n,m,max,min,sum,t;//定义需要的变量
/选手成绩计算
for(i=1;i<n;i++)
{
max=min=f[i][1];//假定最大值与最小值都是该选手的第一个得分
for(j=1;j<=m;j++)
{
sum=sum+f[i][j];//计算总分
if(max<f[i][j])
{max=f[i][j];}
if(min>f[i][j])
{min=f[i][j];}//找出最大最小值
if(j==m)
sf[i]=((sum-max-min)/(m-2));//得到选手的最终得分
}
}
//选手成绩计算结束
//开始计算选手排名
int list[n]//用于排名
for(i=1;i<=n;i++)
{
list[i]=sf[i];
}
for(k=n-1,j=1;j<=n;j++)//用冒泡排序法得到一份从大到小的成绩单
{
for(i=1;i<=k;i++)
{
if(list[i]<=list[i+1])
{t=list[i];
list[i]=list[i+1];
list[i+1]=t;
}
k--;
}
}
/排序完毕,开始输出排名
for(j=1,i=1;i<=n;i++)
{
while(list[i]!=sf[j])一直进行比较,直到第j名选手的成绩跟第i名的成绩相同时才会跳出循环,停止比较
{j++;}
printf("the player%d is the %d",j,i);//输出排名
}
/排名输出完毕
开始计算评委成绩
for(i=0;i<=m;i++)
{
for(j=0;j<=n;j++)
{
pf[i]=pf[i]+(f[j][i]-sf[j]);评委成绩=累计评委成绩+(评委给第j名选手的得分--第j名选手的实际得分)
}
}
//结束
zww
最新推荐文章于 2024-07-25 08:40:26 发布