c程序设计之结构体

来源:百度知道 编辑:UC知道 时间:2024/07/01 13:21:26
输入十个同学的学号以及每个同学的三门功课的成绩,编程计算每个同学的总分和平均分并按学生的成绩从高到低排列。
谢谢!!

#include "stdio.h"
struct student
{ char num[6];
char name[8];
int score[3];
float avr;
} stu[10];
main()
{int t,i,j,sum;
for(i=0;i<10;i++)
{ printf("\n please input No. %d score:\n",i);
printf("stuNo:");
scanf("%s",stu[i].num);
printf("name:");
scanf("%s",stu[i].name);/*输入10个*/

sum=0;
for(j=0;j<3;j++)
{ printf("score %d.",j+1);
scanf("%d",&stu[i].score[j]);
sum+=stu[i].score[j];
}
stu[i].avr=sum/3.0;/*计算平均值*/
}

for(i=0;i<10;i++)
for(j=i+1;j<10-i;j++)
{
if(stu[i].avr<stu[j].avr)
{t=i;i=j;j=t;}
}

/*双重FOR循环,冒泡法比较大小,如果*/
for(i=0;i<10;i++)
printf("%c\n %c\n %d\n%d\n%d\n %f\n %d",stu[i].num,stu[i].name,stu[i].score[0],stu[i].score[1],stu[i].score[2],stu[i].avr,stu[i].avr*3);<