想知道这个问题的代码。

【问题描述】有五个同学,分别有四门功课经过考试均有成绩,统计一下每位同学的平均成绩和每门功课的平均成绩。
【输入形式】输入五名同学的学号,和四门课程的成绩
【输出形式】输出学号及相应的平均成绩,以及四门课程的平均成绩。
【样例输入】每位同学信息占一行,每个信息之间用单个空格隔开
11001 98 96 87 86
11002 76 89 96 56
11003 79 90 76 65
11004 89 36 73 87
11005 91 65 54 76
【样例输出】首先输出每个同学的学号及平均成绩,最后输出四门课程的平均成绩。11001 91.75
11002 79.25
11003 77.50
11004 71.25
11005 71.50
86.60 75.20 77.20 74.00
【样例说明】成绩用float类型即可,输出保留两位小数。

代码如下:

#include <stdio.h>
typedef struct _student
{
    int id; //学号,这个不要也可行
    float score[4];
    float ave;
}Student;
int main()
{
    int i, j;
    Student stu[5];
    float ave;
    for (i = 0; i < 5; i++)
    {
        scanf("%d",&stu[i].id);
        stu[i].ave = 0;
        for (j = 0; j < 4; j++)
        {
            scanf("%f", &stu[i].score[j]);
            stu[i].ave += stu[i].score[j];
        }
        stu[i].ave /= 4;
    }
    //输出每个人的平均分
    for (i = 0; i < 5; i++)
        printf("%d %.2f\n", stu[i].id, stu[i].ave);
    //计算没门课程的平均分
    for (i = 0; i < 4; i++)
    {
        ave = 0;
        for (j = 0; j <5; j++)
            ave += stu[j].score[i];
        ave /= 5;
        printf("%.2f", ave);
        if(i<3)
            printf(" ");
    }
    return 0;
}

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632