【发布时间】:2013-10-18 21:32:44
【问题描述】:
所以我有一个包含球队和分数的文件,我需要将球队读入一个二维字符数组,然后将他们的分数读入一个整数数组。
这是我当前的函数代码,如何在团队名称完成后停止阅读,然后将分数存储在单独的数组中?
void getData (char array [][COLS], int rows, int scores [])
{
ifstream inFile; //Input file stream object
//Open the file
inFile.open ("scores.txt");
if (!inFile)
{
cout << "Error opening data file!\n";
exit(102);
}
for (int r = 0; r < rows; r++)
{
{
//reads through columns
for (int c = 0; c < COLS; c++)
{
inFile >> array[r][c];
}
}
}
for (int count = 0; count < ROWS; count++)
{
for(int i = 0; i < COLS; i++)
{
cout << array[count][i];
}
}
inFile.close();
}
我的输入文件如下:
Jaquars 23
Colts 23
49ers 13
Lions 13
Titans 7
Redskins 38
Cardinals 14
Buccaneers 36
Seahawks 30
Lions 24
Bears 28
Packers 23
Bears 14
Rams 22
Texans 6
Packers 34
【问题讨论】:
-
输入文件的布局是什么?如果它的形式是有一个团队并且每行得分,那么你最好使用 getline()。使用字符串向量也是一个好主意。让生活更轻松。
-
输入文件行的一个示例是 Packers 21,然后在下一行 Browns 14 上,我必须使用 cstrings 进行此分配