#include <stdio.h>
#include <stdlib.h>
#define STNUM 5
struct stuinf
{
int stid;
int score;
}stu [STNUM];
struct stuinf * p[STNUM]; /*p:由指向结构的指针构成的指针数组*/
int main()
{
struct stuinf * ptemp,* p[STNUM];
int i,j,sum=0;
for(i=0;i<=STNUM-1;i++)
{
scanf("%d%d",&stu[i].stid,&stu[i].score);
p[i]=&stu[i];
sum+=stu[i].score;
}
for(i=0;i<STNUM-1;i++)
{
for(j=i+1;j<STNUM;j++)
{
if(p[i]->score<p[j]->score)
{
ptemp=p[i];
p[i]=p[j];
p[j]=ptemp;
}
}
}
printf("\n");
for(i=0;i<=STNUM-1;i++)
printf("%d,%d,%d\n",i+1,(*p[i]).stid,(*p[i]).score);
printf("average score=%d\n",sum/STNUM);
return 0;
}
用结构表示学生的学号和成绩,编写程序,对班中30名学生按成绩进行排序,并输出排序后的学号、成绩和全班平均分。
最新推荐文章于 2024-10-09 11:15:57 发布