为什么不能够直接进行输入(红线的地方)
#include<stdio.h>main()
{
struct student
{
char name[20];
long num;
float score[4];
}st[3];
int i,j;
float t;
printf("Enter students\'datas:\n");
for(i=0;i<3;i++)
{
scanf("%ld",&st[i].num);
getchar();
gets(st[i].name);
for(j=0;j<4;j++)
{
scanf("%f",&st[i].score[j]);
}
}
printf("No.\tName\tscore1\tscore2\tscore3\tscore4\n");
for(i=0;i<3;i++)
{
printf("%ld\t%s\t",st[i].num,st[i].name);
for(j=0;j<4;j++)
printf("%f\t",st[i].score[j]);
printf("\n");
}
getch();
}