我正在寫作業作業,要求用戶閱讀包含未知數量的SSN和成績的文本文件。然後程序需要計算最大值,最小值和平均值,然後輸出相關SSN以及最小值和平均值的最大值。沒有得到預期的輸出
它似乎運行正常,但輸出全部爲「0」。
任何幫助解決這個問題,非常感謝。
代碼:
#include <iostream>
#include <fstream>
#include <string>
#include <iomanip>
using namespace std;
int main()
{
string ssn, maxSSN;
int grade = 0, totalGrades = 0, count = 0, maxScore = 0, minScore = 0;
double avgScore = 0;
ifstream inFile;
inFile.open("C:\\lab5a.txt");
if(!inFile)
{
cout << "Error opening the requested file\n\n";
system("pause");
return 101;
}
while (!inFile.eof())
{
if (count == 0)
{
maxScore = grade;
minScore = grade;
}
else
{
if (grade > maxScore)
maxScore = grade;
if (grade < minScore)
minScore = grade;
}
grade += totalGrades;
count++;
}
if (count)
avgScore = totalGrades/count;
cout << "Maximum Score: " << maxScore << " Student SSN:" << maxSSN << "\n";
cout << "Minimum Score: " << minScore << "\n";
cout << "Average Score: " << avgScore << "\n";
// studentFile >> ssn >> grade;
inFile.close();
cout << "\n\n";
system("pause");
return 0;
}
'totalGrades'在「文件讀取」循環中永遠不會被修改。 – DCoder 2013-03-27 19:27:49
你永遠不會讀取文件。這真的是你的代碼,因爲它看起來像它永遠不會完成...? – RichieHindle 2013-03-27 19:28:05
含糊不清的標題不可能對未來的訪問者有用。太本地化了。 – 2013-03-27 20:00:52