|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
#include <stdio.h>
struct student
{int number;
char name[80];
int score[3];
float aver;
int rank;
}s[5];
int main()
{
int i,j,t;
float k;
for(i=0;i<5;i++)
scanf("%ld%s%f%f%f",&s[i].number,s[i].name,&s[i].score[0],&s[i].score[1],&s[i].score[2]);
for(i=0;i<5;i++) //求平均成绩
{for(j=0;j<3;j++)
k+=s[i].score[j];
s[i].aver=k/3;
}
t=0;
for(i=0;i<5;i++) //排名
{
k=t<4?s[t+1].aver:s[t-1].aver;
for(j=0;j<5;j++)
{if(j==t)
continue;
if(s[j].aver>=k)
{k=s[j].aver;
t=j;
}
s[t].rank=i+1;
}
}
printf("Number: Name: score: Average: rank:\n");
for(i=0;i<5;i++)
printf("%-9ld%-10s%-5.1f%-5.1f%-8.1f%-10.1f%-d\n",s[i].number,s[i].name,s[i].score[0],s[i].score[1],s[i].score[2],s[i].aver,s[i].rank);
return 0;
} |
|