几乎全wa,大佬们救一下QAQ

P5740 【深基7.例9】最厉害的学生

dead000 @ 2023-11-01 15:06:17


#include<stdio.h>
struct student{
    char name[9];
    int score[4];
};
int main()
{
    int n;
    scanf("%d",&n);
    int sum[1001];
    struct student stu[1001];
    for(int i=0;i<n;i++){
        scanf("%s",&stu[i].name);
        for(int j=0;j<3;j++){
            scanf("%d",&stu[i].score[j]);
            sum[i]+=stu[i].score[j];
        }
    }
    int max=-99,t;
    for(int i=0;i<n;i++){
        if(sum[i]>max){
            max=sum[i];
            t=i;
        }
    }
    printf("%s %d %d %d",stu[t].name,stu[t].score[0],stu[t].score[1],stu[t].score[2]);  
 } 

by EvilSpirits @ 2023-11-01 15:22:28

sum[]没有初始化


by dead000 @ 2023-11-01 17:10:52

@EvilSpirits 太感谢啦


by elong123 @ 2023-11-15 21:33:46

@dead000 我有个问题楼主,为什么max要赋值为负数,而有的题要给min一个很大的值呢


by dead000 @ 2023-11-16 15:36:50

@elong123 意思应该是初始化最大和最小值吧。保证在第一次比较时数组的任意数都比最大值大并且比最小值小,或者也可以把最大最小值初始化为数组的第一个元素,都是可以的。


|