n轮,m人,第一个人报2其他人继续,报质数的得2分,其他的得1分
#include<stdio.h>
#define N 100
struct student{
long int number;
int score;
};
void main()
{ struct student stu[N];
int i,m,j,t,n;
int exchange=0;
printf("人数:");
scanf("%d",&m);
printf("轮数:");
scanf("%d",&n);
for(i=0;i<m;i++)
{
printf("学号:");
scanf("%ld",&stu[i].number);
stu[i].score=0;
}
for(i=0;i<m-1;i++)
{
exchange=0;
for(j=0;j<m-1-i;j++)
{
if(stu[i].number>stu[i+1].number)
{
t=stu[i].number;
stu[i].number=stu[i+1].number;
stu[i+1].number=t;
exchange=1;
}
}
if(!exchange)
break;
}
for(i=0;i<m;i++)
{
printf("%ld",stu[i].number);
printf("\n");
}
for(i=0;i<n;i++)
{
for(j=0;j<m;j++)
{
if((j+2)%2==0)
stu[j].score++;
else
stu[j].score+=2;
}
}
for(i=0;i<m;i++)
printf("%d\n",stu[i].score);
}