c语言结构体军事体能成绩统计

img


输入n名学生,输出比平均分高的学生姓名(长度不超过9个字符)、学号和成绩。结构体不太熟练,求教学

结构体里存放姓名、学号和成绩,这里假设成绩全是整数,遍历一遍输入,同时计算所有学生的成绩和。
算出平均分,再遍历一遍输出即可


#include <stdio.h>

struct student {
    char name[10];   // 姓名
    int num;         // 学号
    int score;     // 体能成绩
};

int main(){
    int n;scanf("%d",&n);
    student stu[110];
    float sum = 0;
    for(int i=1;i<=n;i++){
        scanf("%s %d %d",stu[i].name,&stu[i].num,&stu[i].score);
        sum = sum + 1.0*stu[i].score;
    }
    float avg = sum / n;
    for(int i=1;i<=n;i++) {
        if(stu[i].score >= avg) {
            printf("%s %d %d\n",stu[i].name,stu[i].num,stu[i].score);
        }
    }
    return 0;
}