各位學長,為什麼用fprintf寫入,也會出現亂碼?代碼太長,我截取片段
struct stu
{
int numb;
char name[10];
int score;
}student[100];
void write(int n)
{
int i;
FILE *fp=fopen("file.txt","a+");
for(i=0;i<n;i++)
{
fprintf(fp,"%d %s %d\n",&student[i].numb,&student[i].name,&student[i].score);
}
fclose(fp);
printf("錄入結束!\n");
}
for(m=0;m<a;m++)
{
scanf("%d%s%d",&student[m].numb,&student[m].name,&student[m].score);
}
write(a);
在文本卻顯示學號和成績都是一串數字了,如下
4373608 jat 4373624
4373628 kay 4373644
4373648 ktt 4373664
scanf才需要取地址,(f)printf都不需要。