这个程序有错误吗?
#include <stdio.h>
#include <string.h>
struct Stu
{
char name[20];
double math;
double chinese;
double english;
};
main()
{
struct Stu stu[10];
int i;
char nm[20];
double ma;
double ch;
double en;
printf("Please Enter student's name,math,chinese,english\n");
for (i=0; i<10; i++)
{
/* scanf("%s %f %f %f",&nm,&ma,&ch,&en);*/
scanf("%s",&nm);
scanf("%f",&ma);
scanf("%f",&ch);
scanf("%f",&en);
printf("%s:%f,%f,%f",nm,ma,ch,en);
strcpy(stu[i].name,nm);
stu[i].math=ma;
stu[i].chinese=ch;
stu[i].english=en;
printf("ok\n");
printf("%s:%f,%f,%f",stu[i].name,stu[i].math,stu[i].chinese,stu[i].english);
printf("\n");
}
printf("Print scores:\n");
printf("name\t\tmath\tchinese\tenglish\n");
for (i=0; i<10; i++)
{
printf("%s\t\t%f\t%f\t%f\n",stu[i].name,stu[i].math,stu[i].chinese,
stu[i].english);
}
}
我用devcpp编译,其中scanf到nm正确,但scanf到nm,ch,en则不行,请大家指点一下