#include <stdio.h>
#define MAX 50
struct student {
char no[10];
char name[10];
float score[3];
}stu[MAX];
float course_ave[3] = {0};
float stu_ave[MAX] = {0};
// å½å
¥å¦çæ绩
void input(int n) {
int i;
for(i=0; i<n; i++) {
scanf("%s %s", stu[i].no,stu[i].name);
scanf("%f %f %f", &stu[i].score[0], &stu[i].score[1], &stu[i].score[2]);
}
}
// 计ç®æ¯é¨è¯¾çå¹³åæ绩
void Course_ave(int n){
int i,j;
for(i=0; i<n; i++) {
for(j=0; j<3; j++) {
course_ave[j] += stu[i].score[j];
}
}
for(j=0; j<3; j++) {
course_ave[j] /= MAX;
}
}
// 计ç®æ¯ä¸ªå¦ççå¹³åæ绩
void Stu_ave(int n) {
int i,j;
for(i=0; i<n; i++) {
for(j=0; j<3; j++) {
stu_ave[i] += stu[i].score[j];
}
stu_ave[i] /= 3;
}
}
void main () {
int i,j;
printf("请è¾å
¥å¦ççå¦å· å§å è¯æ æ°å¦ è±è¯");
input(MAX);
Course_ave(MAX);
printf("\n课ç¨çå¹³åæ绩æ¯: %6.2f %6.2f %6.2f\n",course_ave[0],course_ave[1],course_ave[2]);
Stu_ave(MAX);
printf("\nå¦ççå¹³åæ绩æ¯: \n");
for(i=0; i<MAX; i++) {
printf(" %s %s %6.2f\n", stu[i].no,stu[i].name, stu_ave[i]);
}
getchar();
getchar();
}
温馨提示:答案为网友推荐,仅供参考