请教高手一个关于文本文件输入输出的问题
#include"stdio.h"#include"stdlib.h"
void main()
{
FILE *fp1,*fp2;
char s[100],c;
int i=0,n;
printf("请输入字符:\n");
if((fp1=fopen("file.txt","w"))==0)
{
printf("打开文件失败:\n");
exit(0);
}
while(c=getchar()!='\n')
fputc(c,fp1);
fclose(fp1);
if((fp2=fopen("file.txt","r"))==0)
{
printf("打开文件失败:\n");
exit(0);
}
while(c=fgetc(fp2)!=EOF)
{
s[i++]=c;
}
fclose(fp2);
n=i;
printf("输出字符:\n");
for(i=0;i<n;i++)
printf("%c",s[i]);
printf("\n");
}
代码如上,这段代码意思是新建一个文本文件并输入字符,然后再从文件中读出字符并存放到数组s中,然后输出数组,运行都没错,但是输出的是乱码怎么回事?新手,多包涵!