为什么会出现这种奇怪的情况

img

img


程序是这样的#include

 int i,j;float max,sum[3];
 for(i=0;i<3;i++)
 {
     printf("请输入学生学号:");
     scanf("%d%",&a[i].num);
    printf("请输入学生姓名:");
     scanf("%s",a[i].name);
     printf("请输入学生三科成绩:");
     for(j=0;j<3;j++)
     scanf("%f",&a[i].trade[j]);
 }

}为什么会出现先输入,然后在打印啊,打印明明写在前面

15行%d就行了,你后面还加个%符号干啥呢???

下面for是不是少了一个缩进,a[i]前面少了&

img