ファイルからデータを読み込んで構造体に保存するプログラムを書いていますが、いくつか問題があります。テキスト ファイルは次のようになります。
ニール・アズリン 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 のスコアについては、最初のスコア (行の 2 番目の数字) ではなく、2 番目のスコア (行の 3 番目の数字) を出力します。など、ダイバーごとに。
各ダイバーのすべてのスコアを読み取って印刷するようにするにはどうすればよいですか?
何時間もこれに取り組んできたので、どんな助けも大歓迎です!
私のコード:
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;
}