将文件中的数据求和并写入文本文件尾: 文件Int_Data.dat 中存放了若干整数,将文件中所有数据相加,并把累加和写入该文件的最后。试编写相应程序。
#include<stdio.h>
#include<stdlib.h>
/**对以空格分隔的数据集进行求和再写入;如果是以“,”分割应使用正则表达式处理
或者按字符处理*/
int main(void)
{
int num,sum=0;
FILE *fp = fopen("Int_Data.dat","r+"); //r+ 读写,但不会覆盖掉原有数据
if(!fp){
printf("file open error\n");
exit(0);
}
while(!feof(fp)){
fscanf(fp,"%d",&num);
sum += num;
}
fputs(" ",fp); //在原数据与累加和之间加一个空格然后写入数据
fprintf(fp,"%d",sum); //或者重新打开一次文件,以“a”追加的方式
if(fclose(fp)){
printf("file close error\n");
exit(0);
}
return 0;
}