嘿伙计们,我正在编写一个程序,它从文件中读取数据并将其存储在一个结构中,我有几个问题。文本文件如下所示:
阿兹林,尼尔 2.3 6.0 5.0 6.7 7.8 5.6 8.9 7.6 巴贝奇,查尔斯 2.3 5.6 6.5 7.6 8.7 7.8 5.4 4.5
行中的第一个数字是难度级别,接下来的 7 个数字是分数,接下来是 24 个不同的名称。
我的程序将打印所有潜水员的姓名和难度级别。然后它只会打印潜水员 #1 的第一个分数,而不是所有分数。
此外,对于 2 号潜水员的分数,它会打印出第二个分数(第三个数字)而不是第一个分数(第二个数字)。对每个潜水员依此类推。
我怎样才能让它读取并打印每个潜水员的所有分数?
我已经为此工作了几个小时,因此非常感谢任何帮助!
我的代码:
for (lcv = 0; lcv < NUM_NAMES; lcv++) //reads in all of the data
{
getline(inFile, diveList[lcv].diversName);
inFile >> diveList[lcv].diff;
for (count = 0; count < NUM_SCORES; count++)
{
inFile >> diveList[lcv].scores[count]; //the problem may be here on down below where i print out the data... im not sure
}
inFile.ignore(200, '\n');
}
printTableOne (diveList);
void printTableOne (const diverList diveList)
{
int lcv;
int count = 0;
cout << "The number of divers for round 1 is: " << NUM_NAMES << endl << endl;
for (lcv = 0; lcv < NUM_NAMES; lcv++)
{
cout << "Diver #" << lcv << endl;
cout << setprecision(1) << fixed << endl;
cout << "NAME: " << diveList[lcv].diversName << endl;
cout << "DIFFICULTY LEVEL: " << diveList[lcv].diff << endl;
cout << "SCORES: " << diveList[lcv].scores[lcv] << endl; //problem here??
cout << endl << endl;
}