c语言帮我找一下错误

#include <stdio.h>
#include <stdlib.h>
#include <conio.h>

struct Student{
int serial;
int a[10];
char name[30];
}student[5];
int main()
{
FILE *fp;
int i;
fp = fopen("D:\\a.txt","r");
for(i = 0;i<5;i++)
fscanf(fp,"%s\n",&student[i]);
fclose(fp);
for(i = 0;i<5;i++)
printf("%s\n",student[i]);

getchar();
return 0;

}
如果把那个printf("%s\n",student[i]);去掉是可以的,不然就调试不了!什么原因啊

student[i]; 是结构体对象
你应该打印他的每个成员
student[i].serial student[i].a student[i].name追问

还是不行,麻烦帮我调试一下吧,一直错误!

追答

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-10-07
你既然用的是文件的知识,当然不能用printf,你要用fptrintf,你回去试下,看看可以吗?
不行的话再回复我追问

我文件是用来只读的,读出来放到数组里,数组我就可以直接用printf读不是吗

第2个回答  2014-10-07
%s输出的是字符串,student[i]是什么追问

student[i]里面是字符串

第3个回答  2014-10-07
结构体你要点出来输出