我真的很困惑为什么我会收到这个特定数组索引的错误。我正在编写一个从文本文件中获取学生成绩输入的程序。此文件为 10 行,每列 2 列,格式为(名字、姓氏、1 级、2 级、3 级、4 级、5 级)。在执行期间,我需要逐行遍历文件并将名称放入他们自己的 10 行 2 列中,并将成绩放入他们自己的 10 行 5 列中。这是一个阶级的事情,我知道我们为什么要这样做。基本上,数据将在循环期间拆分并加载到 namesArray 和 GradesArray 中。我已在我的 IDE 中标识的错误行在两侧和行位置处用*标记
最后,这是我的代码:
//Student Name: Jacob Gillespie
//Date: 10/20/13
//Program: Student Grade Manipulation
//Summary: Reads in grade data from text file, manipulates data
//and stores data back in output file
//Headers
#include <iostream>
#include <string>
#include <fstream>
using namespace std;
//Declare variables and arrays
ifstream inData;
ofstream outData;
string namesArray[10][2];
string gradesArray[10][5];
//Main Program Execution
int main()
{
//Open the data file containing the student names and grades
inData.open("StudentGrades.txt");
//Read data lines and assign student names to namesArray and grades to gradesArray
for (int counter = 0; counter < 10; counter++)
inData >> namesArray[counter][0] >> namesArray[counter][1]
>> gradesArray[counter][0] >> gradesArray[counter][1] >> gradesArray[counter][2]
>> gradesArray[counter][3] >> gradesArray [counter][4];
//TESTING, Print namesArray and gradesArray to ensure values are loaded and assigned correctly
for (int counter = 0; counter < 10; counter++)
*****cout >> namesArray[counter][***0***] >> " " >> namesArray[counter][1] >> endl;*****
for (int counter = 0; counter < 10; counter++)
cout >> gradesArray[counter][0] >> " " >> gradesArray[counter][1] >> " " >> gradesArray[counter][2]
" " >> gradesArray[counter][3] >> " "gradesArray [counter][4] >> endl;
return 0;
}