C++ primer 第五版 中文版 练习 9.50
题目:编写程序处理一个vector<string>,其元素都表示整型值。计算vector中所有元素之和。
修改程序,使之计算表示浮点值的string之和。
答:
/*
编写程序处理一个vector<string>,其元素都表示整型值。计算vector中所有元素之和。
修改程序,使之计算表示浮点值的string之和。
*/
#include <iostream>
#include <string>
#include <vector>
using namespace std;
//计算整型vector<string> 所有元素的和
int sumofintstring(const vector<string> &svect)
{
int sum = 0;
for (auto a : svect)
sum += stoi(a);
return sum;
}
//计算浮点型vector<string> 所有元素的和
float sumoffloatstring(const vector<string> &svect)
{
float sum = 0;
for (auto a : svect)
sum += stof(a);
return sum;
}
int main()
{
vector<string> intsvect = { "1", "1", "2", "3", "5", "8", "13" };
vector<string> floatsvect = { "1.1", "2.33", "3.5", "4", "5.5", "7.9" };
int isum = 0;
float fsum = 0;
isum = sumofintstring(intsvect);
fsum = sumoffloatstring(floatsvect);
cout << "整型的和为:" << isum << endl;
cout << "浮点型的和为:" << fsum << endl;
return 0;
}