数据块读写结构体之后用程序读出后是乱码,求助....
第一个是录入函数 第二个是输出函数 结果全是乱码 求解啊
void f2(FILE * pf){
char c;
int i;
for(i=1;;i++){
struct achieve r,*p=&r;
printf("Input the informatoin num name score Or input 'N'to Break\n");
scanf("%d%s%d%d%d%d",&(p->num),&(p->name),&(p->score[0]),&(p->score[1]),&(p->score[2]),&(p->score[3]),&(p->score[4]),&(p->score[5]));
fwrite(p,sizeof(struct achieve),1,pf);
printf("Y to continue N to out\n");
scanf("%c",&c);
if(c=='N')
break;
}
}
void list (struct achieve *p){
while(p->next!=NULL){
printf("学号为%d 姓名为%s 成绩分别为%d %d %d %d %d %d",p->num,p->name,p->score[0],p->score[1],p->score[2],p->score[3],p->score[4],p->score[5]);
p=p->next;
}
}
scanf("%d%s%d%d%d%d",&(p->num),(p->name),&(p->score[0]),&(p->score[1]),&(p->score[2]),&(p->score[3]),&(p->score[4]),&(p->score[5]));