输入文件(sort.in)
共n+1行
第1行,两个整数n,k,表示有n个同学参加了考试,考了k门;
第1~n+1行,每行k+1个整数,描述1位同学的学号、科目1成绩、科目2成绩、……科目k成绩。
输出文件(sort.out)
共一行,10个整数,排名顺序输出前10名同学的学号,两个数据之间用一个空格隔开。
#include<stdio.h>
int m[10];
int s[100000];
long int n;
void sort()
{
int i,j,k,t,max,x=0;
scanf("%ld %d",&n,&k);
for(i=0;i<n;i++)
{
scanf("\n");
s[i]=0;
for(j=0;j<k;j++)
{
scanf("%d",&t);
getchar();
s[i]=s[i]+t;
}s[i]=s[i]-i-1;//总分记录,减去第一个学号数
}
while(x<=10)
{
max=s[0];
m[x]=1;//学号记录
for(i=1;i<n;i++)
{
if(s[i]>max)
{
max=s[i];
m[x]=i+1;
}
}
s[m[x-1]]=0;
x++;
}
}
void print()
{
int i;
for(i=0;i<10;i++)
printf("%d",m[i]);
}
void main()
{
sort();
print();
}
求看程序问题