0027 输入5名大学生成绩4门功课的成绩,然后求相应问题

问题描述:

  输入5名大学生成绩4门功课的成绩,然后求出:

    (1)每个大学生的总分;

    (2)每门课程的平均分;

    (3)输出总分最高的学生的姓名和总分数;

代码展示:

 1 #include<stdio.h>
 2 #include<string.h>
 3 struct Student{
 4     char name[20];
 5     int grade[4];    //grade[0]表示语文; grade[1]表示数学; grade[2]表示英语; grade[3]表示物理; 
 6     int sum;        //学生总分         
 7     int temp; 
 8 }Stu[5];
 9 
10 int main(){
11     int i,j;
12     int sum = 0;
13     float avg[4];        //存储平均分
14     int index=0;        //存储总分最高同学的下标 
15     for(i=0; i<5; i++){            //循环输入5个学生的信息 
16         printf("请输入第%d个学生的姓名,以及语文、数学、英语、物理成绩:", i+1);
17         scanf("%s",&Stu[i].name);
18         scanf("%d %d %d %d",&Stu[i].grade[0],&Stu[i].grade[1],&Stu[i].grade[2],&Stu[i].grade[3]);
19         for(j=0;j<4;j++){
20             sum += Stu[i].grade[i];
21         }
22         Stu[i].sum = sum;
23     } 
24     for(i=0;i<4;i++){        //计算各科平均分 
25         int temp = 0;
26         for(j=0;j<5;j++){
27             temp += Stu[j].grade[i];
28         }
29         avg[i] = temp/5.0;
30     }
31     for(i=0;i<4;i++){        
32         printf("第%d门课的平均分为:%.2f\n", i+1, avg[i]);
33     }
34     for(i=1;i<5;i++){        //循环查找总分最高的学生 
35         if(Stu[i].sum > Stu[index].sum){
36             index = i;
37         }
38     } 
39     printf("总分最高的学生是:%s,其总分为:%d\n",Stu[index].name, Stu[index].sum);
40     return 0;
41 }

运行截图:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

空梦♡

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值