如何用C++读取一个txt文件并计算文件中所有数字之和

1,2.34,5,67,8,9就是这样一个文件怎么能只把数字相加求和... 1,2.3
4,5,6
7,8,9
就是这样一个文件 怎么能只把数字相加求和
展开
 我来答
百度网友cd8541ae4
2013-08-01 · TA获得超过264个赞
知道小有建树答主
回答量:126
采纳率:100%
帮助的人:112万
展开全部
#include<iostream>
#include<fstream>
#include<string>
using namespace std;
void ReadFromFile(const char* pszFileName, double * pdNum, int &size)
{
 size = 0;
 ifstream fin(pszFileName);
 if( fin== NULL)
  cout<<"错误——不能打开文件"<<pszFileName<<endl;

 char szNum[10];
 int nPos = 0;
 char c;
 while( (c = fin.get()) !=EOF)
 {
  if(c != '\n' && c != ',' && c != ' ')
  {
   szNum[nPos++] = c;
  }
  else
  {
   pdNum[size++] = stod(szNum);
   memset(szNum, 0 , sizeof(szNum));
   nPos = 0;
  }
 }
}
void main()
{
 char *pszFileName = "d:\\test.txt";
 double Num[100];
 int size;
 ReadFromFile(pszFileName, Num, size);
 double dSum = 0;
 for(int i = 0; i < size; i++)
 { 
  cout<<Num[i]<<endl;
  dSum += Num[i];
 }
 cout<<"和是:"<<dSum<<endl;
 return;
}
Magic_旭
推荐于2017-12-15 · 超过41用户采纳过TA的回答
知道答主
回答量:287
采纳率:100%
帮助的人:118万
展开全部
char ch[...];
readfile(hfile,ch,...);
for(...count...)
{
//从第一个字符到最后一个字符
判断是不是数字的编码,如果是,就加到一个变量里
}
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友1680984
2013-08-01 · TA获得超过414个赞
知道小有建树答主
回答量:968
采纳率:0%
帮助的人:451万
展开全部
从文件中按行读出数据,然后用分隔符将每一行的数字取出,相加
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
cjj796
2013-08-01 · TA获得超过8702个赞
知道大有可为答主
回答量:1.3万
采纳率:68%
帮助的人:3371万
展开全部

这样的结果可以吗,满意请采纳

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-08-01
展开全部
直接建立的txt文件,可以用ifstream fin("a.txt");读取txt文件a
定义一个变量
数字之间是空格的话直接用循环fin>>读入并相加
是逗号的话记得要用get函数
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式