关于#c语言#的问题:找出总分最高的学生

题目

img


我的错误答案

#include
struct stu
{
    char xh[6];
    char xm[11];
    int a,b,c,z;
};
int main()
{
    int i,n,j=0;
    scanf("%d",&n);
    struct stu s[10];
    for(i=0;iscanf("%s %s %d %d %d %d",&s[i].xh,&s[i].xm,&s[i].a,&s[i].b,&s[i].c);
        s[i].z=s[i].a+s[i].b+s[i].c;
    }
    int max=s[j].z;
    for(i=0;iif(s[i].z>max)
        {
            j=i;
        }
    }
    printf("%s %s %d",s[j].xm,s[j].xh,s[j].z);
    return 0;
}

提交的时候显示部分正确,请问我是哪些地方写错了啊?谢谢


#include<stdio.h>
struct stu
{
    char xh[6];
    char xm[11];
    int a,b,c,z;
};
int main()
{
    int i,n,j=0;
    scanf("%d",&n);
    struct stu s[10];
    for(i=0;i<n;i++)
    {
        scanf("%s %s %d %d %d",s[i].xh,s[i].xm,&s[i].a,&s[i].b,&s[i].c);
        s[i].z=s[i].a+s[i].b+s[i].c;
    }
    int max=s[j].z;
    for(i=0;i<n;i++)
    {
        if(s[i].z>max)
        {
            j=i;
        }
    }                                                                                                                                                                                                              
    printf("%s %s %d",s[j].xm,s[j].xh,s[j].z);
    return 0;
}

学号和姓名是char型的数组,输入的时候不用加&,此外多了一个%d,你再试一下

似乎没啥问题啊。

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