#include <iostream>
#include <iomanip>
#include <fstream>
#include <sstream>
#include <vector>
using namespace std;
int main() {
ifstream myfile("iScan-Image-1.txt");
if (!myfile.is_open()) {
cout << "Unable to open myfile";
system("pause");
exit(1);
}
vector<string> vec;
string temp;
while (getline(myfile, temp)) //利用getline()读取每一行,并按照行为单位放入到vector
{
vec.push_back(temp);
}
vector <double> radius_x;
for (auto it_x = vec.begin(); it_x != vec.end(); it_x++)
{
//cout << *it << endl;
istringstream is(*it_x); //用每一行的数据初始化一个字符串输入流;
string s_x;
int pam = 0;
while (is >> s_x) //以空格为界,把istringstream中数据取出放入到依次s中
{
if (pam == 9) //获取第十列的数据
{
double r_x = atof(s_x.c_str()); //做数据类型转换,将string类型转换成float
radius_x.push_back(r_x);
}
pam++;
}
}
double sum_x, ave_x;
sum_x = ave_x = 0.0;
cout << "x的数据"<<endl;
for (auto it = radius_x.begin(); it != radius_x.end(); it++)
{
sum_x += *it;
}
cout.precision(12);
ave_x = sum_x / 50;
cout << ave_x << endl;
system("pause");
return 1;
}
C++获取txt文件的某一列数据,并求其平均值
最新推荐文章于 2023-08-25 21:12:38 发布