C语言从txt文档中读出数据只保留四位小数存入新的文档,程序有误求指点
#include<stdio.h>#include"windows.h"intmain(){doubles=0;doublem=0;FILE*fp;fp=fopen("e...
#include<stdio.h>
#include "windows.h"
int main()
{
double s=0;
double m=0;
FILE *fp;
fp =fopen("e:\\a.txt","r");
FILE *fp1;
fp1=fopen("e:\\b.txt","w+");
while(!feof(fp))
{
fscanf(fp,"%lf",&s);
printf("%.4lf\n",s);
m=s;
fprintf(fp1,"%.4lf",&m);
};
fclose(fp);
return 0;
}
以下是名字为a的txt文档数据:
116.357003333333
116.357005
116.357005
116.357021666667
116.357078333333
116.357171666667 展开
#include "windows.h"
int main()
{
double s=0;
double m=0;
FILE *fp;
fp =fopen("e:\\a.txt","r");
FILE *fp1;
fp1=fopen("e:\\b.txt","w+");
while(!feof(fp))
{
fscanf(fp,"%lf",&s);
printf("%.4lf\n",s);
m=s;
fprintf(fp1,"%.4lf",&m);
};
fclose(fp);
return 0;
}
以下是名字为a的txt文档数据:
116.357003333333
116.357005
116.357005
116.357021666667
116.357078333333
116.357171666667 展开
2个回答
展开全部
你好!!
fprintf(fp1,"%.4lf",m); // 保存的时候,不要取地址符号
还有一个情况,你是不是也要txt文件有换行呢?
fprintf(fp1,"%.4lf\n",m); // 保存的时候,要换行,加上 \n
完整的代码:
#include<stdio.h>
#include "windows.h"
int main()
{
double s=0;
double m=0;
FILE *fp;
fp =fopen("e:\\a.txt","r");
FILE *fp1;
fp1=fopen("e:\\b.txt","w+");
while(!feof(fp))
{
fscanf(fp,"%lf",&s);
printf("%.4lf\n",s);
m=s;
fprintf(fp1,"%.4lf\n",m); // 保存的时候,不要取地址符号
};
fclose(fp);
return 0;
}
更多追问追答
追问
只去掉了个取地址符号吗,新生成的b txt文档还是空的呀
追答
不是空的呀,看我给你的截图,文件在你的 E盘根目录下
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询