m0_74079850 2023-03-18 08:56 采纳率: 96.3%
浏览 92
已结题

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

题目

img


我的错误答案

#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 %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;
}

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

  • 写回答

4条回答 默认 最新

  • itmozun629 2023-03-18 09:11
    关注
    
    #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,你再试一下
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 3月26日
  • 已采纳回答 3月18日
  • 创建了问题 3月18日

悬赏问题

  • ¥15 phython如何实现以下功能?查找同一用户名的消费金额合并—
  • ¥15 孟德尔随机化怎样画共定位分析图
  • ¥18 模拟电路问题解答有偿速度
  • ¥15 CST仿真别人的模型结果仿真结果S参数完全不对
  • ¥15 误删注册表文件致win10无法开启
  • ¥15 请问在阿里云服务器中怎么利用数据库制作网站
  • ¥60 ESP32怎么烧录自启动程序
  • ¥50 html2canvas超出滚动条不显示
  • ¥15 java业务性能问题求解(sql,业务设计相关)
  • ¥15 52810 尾椎c三个a 写蓝牙地址