C++ 使用循环显示阵列时,没有任何效果

C++ 使用循环显示阵列时,没有任何效果,c++,C++,这是我的密码 void printMatrix(string matrix[][NUMBER_OF_SCORES + 1], int NUMBER_OF_STUDENTS) { int row, col; //this code below is to loop it so it displays all the values /* for (row = 0; row < NUMBER_OF_STUDENTS + 1; col++) { cout << matrix[r

这是我的密码

void printMatrix(string matrix[][NUMBER_OF_SCORES + 1], int NUMBER_OF_STUDENTS)
{
int row, col;
//this code below is to loop it so it displays all the values
/* for (row = 0; row < NUMBER_OF_STUDENTS + 1; col++)
{
   cout <<  matrix[row][col];
   cout << endl;
}
*/
int looper = 0;
// THIS IS THE FORMAT FOR DISPLAYING ONE LINE MAN

//cout << matrix[0][0];
//cout << matrix[0][1];



//this is just some test code to see if it can output certain values right
//  cout << matrix[0][0];
// cout << matrix[0][1];
// cout << matrix[0][2];
// cout << matrix[0][3];
} 
void printMatrix(字符串矩阵[][分数的整数+1],学生的整数)
{
int row,col;
//下面的代码将循环它,以便显示所有值
/*对于(行=0;行<学生人数+1;列++)
{

cout到目前为止,即使没有连续循环,您的尝试实际上也不会打印整个矩阵。首先,对于while循环,很可能您应该在
学生数-1
处初始化循环器,因为如果数组中有
学生数
行,那么最高的元素将是
学生数_学生-1
。你说的学生人数+1可能是因为其他地方的编码问题。如果是这样的话,为了简单起见,我会先解决这个问题

关于你的for循环

for (row = 0; row < NUMBER_OF_STUDENTS + 1; col++) {
   cout <<  matrix[row][col];
   cout << endl;
}
for(行=0;行<学生人数+1;列++){

cout这是打印值表的常规方法

void printMatrix(string matrix[][NUMBER_OF_SCORES + 1], int NUMBER_OF_STUDENTS)
{
  for (int row = 0; row < NUMBER_OF_STUDENTS + 1; ++row)
  {
    for (int col = 0; col < NUMBER_OF_SCORES; ++col)
    {
      cout << matrix[row][col] << ' ';
    }
    cout << '\n';
  }
}
void printMatrix(字符串矩阵[][分数的整数+1],学生的整数)
{
对于(int行=0;行<学生人数+1;++行)
{
for(整数列=0;列<分数的个数;++列)
{

如果您在此函数中尝试的所有操作都不起作用,则可能是您的程序在调用此函数之前出错。因此,请集中精力找出前面的问题所在。顺便说一句,在您的
for(row=0;row
,应该是
row++
而不是
col++
?而且
col
没有初始化,它是UB?你可能应该发布更多的代码,最好是一个包含你正在使用的输入的完整程序。可能你应该在
学生数量-1开始循环,因为如果有
学生数量
行在数组中,最高的元素是
NUMBER\u OF_STUDENTS-1
你能发布完整的代码吗?我从几天前做的一个作业中去掉了这个元素,这个作业是处理int数组而不是字符串数组。我试着从所有代码中删除+1,但由于某种原因,它弄糟了,所以我保留了它。NUMBER\u OF_OF_STUDENTS and NU我尝试使用这段代码。它一个接一个地显示所有数据,但所有数据都显示在同一行上。然而,在那之后,“空行”无限循环。我不明白为什么它不起作用,但我要重新查看代码,看看问题出在哪里。
for (row = 0; row < NUMBER_OF_STUDENTS + 1; col++) {
   cout <<  matrix[row][col];
   cout << endl;
}
for(int row=0; row < numOfRows; row++)
    for(int col=0; col < numOfCols; col++)
         cout << matrix[row][col];
void printMatrix(string matrix[][NUMBER_OF_SCORES + 1], int NUMBER_OF_STUDENTS)
{
  for (int row = 0; row < NUMBER_OF_STUDENTS + 1; ++row)
  {
    for (int col = 0; col < NUMBER_OF_SCORES; ++col)
    {
      cout << matrix[row][col] << ' ';
    }
    cout << '\n';
  }
}