typedef struct stu
{
int num;
char name[10];
int sc1,sc2,sc3;
}STU;
main()
{
int i;
STU st[3];
for(i=0;i<=2;i++)
{
printf("please input num:");
scanf("%d",&st[i].num);
printf("please input name:");
scanf("%s",st[i].name);
printf("please input 3 score:");
scanf("%d%d%d",&st[i].sc1,&st[i].sc2,&st[i].sc3);
}
}
这样一个程序,当我 改成
typedef struct stu
{
int num;
char name[10];
float sc1,sc2,sc3;/*原来是int sc1,sc2,sc3;*/
}STU;
main()
{
int i;
STU st[3];
for(i=0;i<=2;i++)
{
printf("please input num:");
scanf("%d",&st[i].num);
printf("please input name:");
scanf("%s",st[i].name);
printf("please input 3 score:");
scanf("%f%f%f",&st[i].sc1,&st[i].sc2,&st[i].sc3);
/*原来是scanf("%d%d%d",&st[i].sc1,&st[i].sc2,&st[i].sc3);*/
}
}
就出现死循环了,或者干脆输不进。
第一次,我输的是整形的一些数字, 改成 第二个程序的时候,我输小数, 就会死循环。
{
int num;
char name[10];
int sc1,sc2,sc3;
}STU;
main()
{
int i;
STU st[3];
for(i=0;i<=2;i++)
{
printf("please input num:");
scanf("%d",&st[i].num);
printf("please input name:");
scanf("%s",st[i].name);
printf("please input 3 score:");
scanf("%d%d%d",&st[i].sc1,&st[i].sc2,&st[i].sc3);
}
}
这样一个程序,当我 改成
typedef struct stu
{
int num;
char name[10];
float sc1,sc2,sc3;/*原来是int sc1,sc2,sc3;*/
}STU;
main()
{
int i;
STU st[3];
for(i=0;i<=2;i++)
{
printf("please input num:");
scanf("%d",&st[i].num);
printf("please input name:");
scanf("%s",st[i].name);
printf("please input 3 score:");
scanf("%f%f%f",&st[i].sc1,&st[i].sc2,&st[i].sc3);
/*原来是scanf("%d%d%d",&st[i].sc1,&st[i].sc2,&st[i].sc3);*/
}
}
就出现死循环了,或者干脆输不进。
第一次,我输的是整形的一些数字, 改成 第二个程序的时候,我输小数, 就会死循环。