首页 > 试题广场 >

将文件中的数据求和并写入文本文件尾: 文件Int_Data.

[问答题]

将文件中的数据求和并写入文本文件尾: 文件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;
}

发表于 2022-03-05 17:34:00 回复(0)

include <stdio.h>

int main(void)
{
FILE *fp=fopen("in.txt","r");
int i,s=0;
while (!feof(fp))
{
fscanf(fp,"%d",&i);
s+=i;
}
fp=freopen("in.txt","a",fp);
fprintf(fp," %d",s);
fclose(fp);
return 0;

  1. }
发表于 2018-12-18 17:38:34 回复(0)