c语言 有10个学生,每个学生的数据 平均成绩 以及最高分,有10个学生,每个学生的数据包括学号、姓名、3门课程的成绩,从键盘输人10个学生数据,要求输出3门课程总平均成绩,以及最高分的学生的数据(包...

有10个学生,每个学生的数据包括学号、姓名、3门课程的成绩,从键盘输人10个学生数据,要求输出3门课程总平均成绩,以及最高分的学生的数据(包括学号、姓名、3门课程成绩、平均分数)

#include

#define NAMLEN 20

#define STUCNT 10

typedef struct student_t{

int num;

char name[NAMLEN];

int score[3];

} student;

int main(){

student students[STUCNT];

int maxi = 0, maxsum = 0;

double aver_0 = 0, aver_1 = 0, aver_2 = 0;

for (int i = 0; i < STUCNT; i++){

scanf("%d%s%d%d%d", &students[i].num, students[i].name, &students[i].score[0], &students[i].score[1], &students[i].score[2]);

int sum = students[i].score[0] + students[i].score[1] + students[i].score[2];

if (sum > maxsum){

maxsum = sum;

maxi = i;

}

aver_0 += students[i].score[0];

aver_1 += students[i].score[1];

aver_2 += students[i].score[2];

}

aver_0 /= STUCNT;

aver_1 /= STUCNT;

aver_2 /= STUCNT;

printf("%lf %lf %lf\n", aver_0, aver_1, aver_2);

printf("%d %s %d %d %d %lf\n", students[maxi].num, students[maxi].name, students[maxi].score[0], students[maxi].score[1], students[maxi].score[2],

(students[maxi].score[0] + students[maxi].score[1] + students[maxi].score[2]) / 3.0);

return 0;

}

运行截图:

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值