我有一个带有数字的大文件,我想根据它们的位置(行,列)提取数字。例如,如果我只想处理前3行和3列9个数字。该程序在第一行打印9个数字。一旦列索引为4,我想进入下一行。 如何在c ++中执行此操作。 以下是我到目前为止所做的事情:
#include <iostream>
#include <fstream>
using namespace std;
const int NROWS = 3;
const int NCOLS = 3;
int main()
{
ifstream data;
double Numbers[NROWS][NCOLS];
double Num;
data.open("Input.txt");
for (int i = 0; i<NROWS; ++i)
{
for (int j = 0; j<NCOLS; ++j)
{
data >> Num;
Numbers[i][j]=Num;
cout << Numbers[i][j] << endl;
}
}
data.close();
return 0;
}
答案 0 :(得分:1)
在读取每个NCOLS
列号后,您应该跳过行。
#include <iostream>
#include <fstream>
using namespace std;
const int NROWS = 3;
const int NCOLS = 3;
int main()
{
ifstream data;
double Numbers[NROWS][NCOLS];
double Num;
data.open("Input.txt");
for (int i = 0; i<NROWS; ++i)
{
for (int j = 0; j<NCOLS; ++j)
{
data >> Num;
Numbers[i][j]=Num;
cout << Numbers[i][j] << endl;
}
std::string skip;
std::getline(data, skip);
}
data.close();
return 0;
}