输入学生的信息
#include<stdio.h>
main()
{
struct
{
int num;
char name[20];
char sex;
int age;
}stu[5];
int i;
for(i=0;i<5;i++)
{
printf("请输入学生信息\n");
scanf("%d",&stu[i].num);
scanf("%s",&stu[i].name);
scanf("%c",&stu[i].sex); //在%c之前加一个空格
scanf("%d",&stu[i].age);
}
for(i=0;i<5;i++)
{
printf( "*%s*",stu[i].name);
}
}
发现在输入name时,如果名字长度不够20个字符,那么接下来的sex,age都会输进name[20]的数组中。后来的printf打印出来肯定是错误的。