【问题标题】:How can I get the sum of integers in a text file with c++?如何使用 C++ 获取文本文件中的整数总和?
【发布时间】:2017-05-13 03:30:36
【问题描述】:

如果这是一个简单的问题,我深表歉意,我正在自学 C++,但似乎无法在任何地方找到我正在寻找的解决方案。

假设我有一个文本文件,其中的数据组织如下:

10 - 样本 1

20 - 样本 2

30 - 样本 3

40 - 样本 4

有没有办法从每一行获取数字并将它们的总和存储在一个变量中?还是我错误地接近这个? 提前致谢!

【问题讨论】:

  • 将任务分解成更小的任务。他们每个人都已经回答了。
  • @Blake Greene:你可以在下面查看我的答案,请have a look at this page

标签: c++ loops sum text-files fstream


【解决方案1】:

您需要在头文件列表中包含<fstream>

然后:

1- 打开您的文件。
2- 逐行阅读。
3- 总结数字。
4-打印总数。

您需要阅读文件以完全了解其工作原理

int main()
{
        fstream MyFile;  // declare a file

        MyFile.open("c:\\temp\\Numbers.txt", ios::in); // open the file

        int sum = 0;
        string line;


        while (getline(MyFile, line))  //reading a line from the file while possible
        {
            sum = sum + stoi(line);    // convert string to number and add it to the sum
        }

        MyFile.close();   // closing the file

        cout << "sum is: " << sum;  // print the sum

    cin.get();

    return 0;
}

【讨论】:

  • 使用std::ifstream MyFile("c:\\temp\\Numters.txt"); 创建文件,这就是构造函数的用途。不要费心去关闭它;这就是析构函数的用途。
  • @Pete Becker:我认为初学者了解openclose 以及其他文件概念是个好主意。他们将在未来的某个时候使用构造函数和析构函数,他们会很感激的。
  • 嗯,我认为他们应该尽快学习并开始使用 RAII,但无论如何,最好实际检查该文件是否打开;)...
  • 非常感谢!我有正确的想法只是无法为我的生活找到解决方案!我试图在这里找到答案,但他们似乎都没有给我提示。感谢帮助:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-12-28
  • 1970-01-01
  • 2018-10-25
  • 1970-01-01
  • 1970-01-01
  • 2016-08-14
  • 2020-02-10
相关资源
最近更新 更多