c++编程 出了个小问题

来源:百度知道 编辑:UC知道 时间:2024/05/16 12:58:31
#include<stdio.h>

int main()
{
FILE*file;
int a,b;
if((file=fopen("t.txt","a"))==NULL)
printf("Error");
else
{
file=fopen("t.txt","a");
scanf("%d",&a);
fprintf(file,"%d",a);

fscanf(file,"%d",&b);
printf("%d",b);
fclose(file);
return 0;
}
}

为什么我每次运行的时候,我想输入一个数字,让他重复这个数字,但总是显示647这个数?

你的文件使用“a”即append追加方式打开的,无法读取

#include<stdio.h>

int main()
{
FILE*file;
int a,b;
if((file=fopen("t.txt","w+"))==NULL)
printf("Error");
else
{
scanf("%d",&a);
fprintf(file,"%d",a);

rewind(file);

fscanf(file,"%d",&b);
printf("%d",b);
fclose(file);
return 0;
}
}

fopen("t.txt","a")后面的‘a’去掉试试