关于结构体数组输入和输出的一个小问题。
两个小细节,困扰了四个小时。没办法正常输出。
大家帮忙看下问题在哪。
#include
struct jiegouti1
{
char name[20];
int number;
char csex[20];
int igrade;
}xuesheng[5] = { {"sd",10,"fd",45},{"sd",10,"fd",45},{"sd",10,"fd",45},{"sd",10,"fd",45},{"sd",10,"fd",45} }
;
int main()
{
int j;
for (j = 0; j < 5;j ++);
{
printf("top%d",j+1);
printf("%s", xuesheng[j].name);
printf("%d", xuesheng[j].number);
printf("%s", xuesheng[j].csex);
printf("%d", xuesheng[j].igrade);
printf("\n");
};
return 0;
}
上面的是教材提供,自己敲出来的。
下面是自己写的。
#include
#define Printfshuchu printf("%s %d %s %d",xuesheng[j].name,xuesheng[j].number,xuesheng[j].csex,xuesheng[j].igrade);
struct jiegouti1
{
char name[20];
int number;
char csex[20];
int igrade;
}xuesheng[5]
;
int main(void)
{
int i,j;
for (j = 0; j < 5; j++);
{
scanf_s("%s", &xuesheng[j].name, 20);
scanf_s("%d", &xuesheng[j].number);
scanf_s("%s", &xuesheng[j].csex, 20);
scanf_s("%d", &xuesheng[j].igrade);
}
for (j = 0; j < 5;j ++);
{
printf("top%d \n",j+1);
Printfshuchu(printf);
};
return 0;
}
+++++++++++++++++++++++++++++++++++++++++
最后都抽了一包烟了 才发现问题。
然后动了两下撤销问题解决。
自己疏忽大意导致四个小时的浪费和各种不解,一直需找各种代码输入错误,
却不知是自己的马虎。
发帖检讨自己,顺便算是一个给自己和坛友的一个提醒。