从数组输出字符值给磁盘文本后,文本中除了实际字符值外,还有乱码,咋办
#include<stdio.h> //专用路径E:\a.txt#include<process.h>
void main()
{
FILE *fp;
char cChar[30];
struct sStruct
{
char ilnt1[30];
char ilnt2[30];
char ilnt3[30];
}xXs[100];
int i,n;
printf("输入存储学生资料文本的路径:");
scanf("%s",&cChar);
printf("输入学生总数:");
scanf("%d",&n);
fflush(stdin);
for(i=0;i<n;i++)
{
printf("第%d个学生\n",i+1);
printf("数学成绩:");
scanf("%s",xXs[i].ilnt1);
printf("语文成绩:");
scanf("%s",xXs[i].ilnt2);
printf("英语成绩:");
scanf("%s",xXs[i].ilnt3);
printf("\n");
}
if((fp=fopen(cChar,"wb"))==NULL)
{
printf("文本开流失败");
exit(0);
}
for(i=0;i<n;i++)
{
if(fwrite(&xXs[i],sizeof(struct sStruct),1,fp)!=1)
printf("第%d个学生成绩资料,数学:%s,语文:%s,英文:%s\n",i+1,xXs[i].ilnt1,xXs[i].ilnt2,xXs[i].ilnt3);
}
fclose(fp);
}