关于#c语言#的问题,请各位专家解答!输出是错的 找一下错误

#include<stdio.h>
int main()
{
    int sum1=0,sum2=0,max1=0,max2=0;
    struct Stu
    {
        char num[20];
        char name[20];
        int com;
        int eng;
    }s;
    struct Stu *p;
    for(p=&s;p<=&s+4;p++)
    {
        scanf("%s%s%d%d",(*p).num,(*p).name,&(*p).com,&(*p).eng);
        sum1+=(*p).com;
        sum2+=(*p).eng;
        if((*p).com>max1)
        max1=(*p).com;
        if((*p).eng>max2)
        max2=(*p).eng;
    }
    double m1,m2;
    m1=sum1*1.0/5.0;
    m2=sum2*1.0/5.0;
    printf("%d %.2lf\n",max1,m1);
    printf("%d %.2lf\n",max2,m2);
    return 0;
}

把你的需求和遇到的问题说一下,怎么就输出错了,我看着能输出内容啊

各科最高分不是对了吗