我试图从一个看起来像这样的文件中读取每个月的平均降雨量:
1月3日3月2日1.2 3月2.2
8月2.3日9月2.4
我需要接受前3个数字并获得它们的平均值以及输出第3个月(3月)。我目前有这个代码:
#include <fstream>
#include <string>
using namespace std;
int main()
{
ifstream inputFile;
string name;
double num = 0, many = 0, total = 0, value = 0;
inputFile.open("Rainfall.txt");
for (int count = 1; count <= 6; count++)
{
inputFile >> name;
if (count == 1 || count == 3 || count == 5)
{
continue;
}
name += total;
cout << name << endl;
}
for (int inches = 1; inches <= 6; inches++)
{
inputFile >> name;
if (inches == 1 || inches == 3 || inches == 5)
{
continue;
}
cout << name << endl;
}
inputFile.close();
return 0;
}
输出结果如下:
3.2
1.2
2.2
2.3
2.4
2.4
现在我无法添加前3个数字,因为它们是字符串,我需要它们是双打。
答案 0 :(得分:4)
如果格式name number
一致,您可以通过以下方式阅读:
std::string name;
double number = 0, total = 0;
while(inputFile >> name >> number)
{
cout << name << ' ' << number << '\n';
total += number;
}