你的要求是下次启动程序能够恢复上次运行时数组的值,还是在程序运行时能够记录并回滚每一次数组的更改情况?如果是后者,那么就不需要写文件。
追问是下次程序启动时能够用上次更改的值,相当于每次更改的值都永久保存在数组中
追答#include<stdio.h>
int main()
{
int i,j;
int a[5][5]={0};
FILE *fp = fopen("a.txt","r");
if(fp==NULL)
{
printf("记录不存在\n");
}
else
{
printf("原数组的值为:\n");
for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
{
fscanf(fp,"%d",&a[i][j]);
printf("%d ",a[i][j]);
}
printf("\n");
}
fclose(fp);
}
printf("输入数组的新值:\n");
for(i=0;i<5;i++)
for(j=0;j<5;j++)
scanf("%d",&a[i][j]);
fp = fopen("a.txt","w");
if(fp==NULL)
{
printf("无法写入记录!\n");
return 1;
}
else
{
for(i=0;i<5;i++)
for(j=0;j<5;j++)
fprintf(fp,"%d ",a[i][j]);
fclose(fp);
printf("记录已更新。\n");
return 0;
}
}