我試圖從我之前在程序中輸入的文本文件中讀取測試分數時遇到問題。問題是它說我的變量未定義,但我想我已經定義了它們。使用「ofstream」的程序的寫作部分完美地工作,給了我一個文本文件格式化的輸出。從文本文件C++中讀取輸入
1001 21 22 23 24
1002 25 26 27 28
1003 29 30 31 32
我的目標有以下原則: 2.從文件中讀取數據。 a。使用嵌套循環。 b。外部循環將是一個「while」循環,內部循環將是一個「for」循環(4次測驗)。
下面是我的代碼如下。希望有人能看到我要出錯的地方,並指向正確的方向:
#include <iostream>
#include <cmath>
#include <fstream>
#include <iomanip>
using namespace std;
int main()
{
int numStudents, numTests = 4, studentCount = 1, count = 1, test = 1, score = 0, testCount = 1,
int stuID;
double average;
double total;
ofstream outputFile;
ifstream inputFile;
cout << fixed << setprecision(2);
//Open file scores.txt
outputFile.open("Scores.txt");
//Get the number of students
cout << "How many students? ";
cin >> numStudents;
while (studentCount <= 3)
{
cout << "Enter Student ID: ";
cin >> stuID;
outputFile << stuID << " ";
for (test = 1; test <= numTests; test++)
{
cout << "Enter grade for quiz " << test << ": ";
cin >> score;
outputFile << score << " ";
}
outputFile << endl;
studentCount++;
}
outputFile.close(); //closes Output File
inputFile.open("Scores.txt"); //opens Output File
while (studentCount <= 3)
{
for (test = 1; test <= numTests; test++)
{
inputFile >> score;
total += score;
}
average = total/numTests;
inputFile >> stuID;
cout << "The average for student " << stuID << " is " << average << endl;
studentCount++;
}
inputFile.close(); //closes Input File
system("pause");
return 0;
}
感謝您抽出寶貴時間來幫助我。
你得到編譯錯誤或運行時錯誤? 「它說我的變量未定義」是什麼意思? – irrelephant 2014-11-02 21:20:01
除非我誤解,否則您將'score'添加到'total',而不給'total'一個初始值。 – druckermanly 2014-11-02 21:20:01
如果您不明白您遇到的錯誤,請考慮發佈錯誤的整個文本,而不是嘗試總結它。 – 2014-11-02 21:24:28