Esther


私信TA

用户名:uq_87513077221

访问量:881

签 名:

等  级
排  名 4037
经  验 1722
参赛次数 0
文章发表 13
年  龄 20
在职情况 学生
学  校 nj
专  业 物联网工程

  自我简介:

注意:

代码:

#include <stdio.h>

struct stu

{

    char num[100];

    char name[100];

    int score[3];

    int sum;

};                    //定义结构体

void input(struct stu* a,int n);

void output(struct stu* a,int n);

int main(void)

{

    int n;

    scanf("%d",&n);

    struct stu a[n];

    input(a,n);

    output(a,n);

     

    return 0;

}

 

void input(struct stu * a,int n)

{

    int i;

    for(i=0;i<n;i++)

    {

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

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

    }

}

 

void output(struct stu* a,int n)

{

    int i,j;

    int ai=0,bi=0,ci=0;

    for(i=0;i<n;i++)

    {

        ai+=a[i].score[0];

        bi+=a[i].score[1];

        ci+=a[i].score[2];

    }

    printf("%d %d %d\n",ai/n,bi/n,ci/n);

    int max=a[0].sum;

    for(i=1;i<n;i++)

    {

        if(max<a[i].sum)

        {

            max=a[i].sum;                       //筛选出最大值,找到下标。

        }

    }

    for(i=0;i<n;i++)

    {

        if(max==a[i].sum)

        {

            printf("%s %s %d %d %d\n",a[i].num,a[i].name,a[i].score[0],a[i].score[1],a[i].score[2]);     //输出成绩最高的学生学号,姓名,三科成绩

           

        }

    }

}


 

0.0分

0 人评分

  评论区