Поэтому я не понимаю, что я делаю неправильно (синтаксическая ошибка, вложенный цикл или просто глупая ошибка ??). Мой компилятор попросил меня нажать любую клавишу, чтобы продолжить. , , Не могли бы вы указать мне в правильном направлении?
#include "stdafx.h"#include <iostream>
using namespace std;
int main()
{
const int MAX_ROWS = 2;
const int MAX_COLS = 4;
int BigSmall[MAX_ROWS][MAX_COLS] =
{
{1,3,5,7},
{2,4,6,8}
};
for( int Row = 2; Row > MAX_ROWS; Row--)
{
for( int Column = 4; Column > MAX_COLS; Column--)
{
cout << "Integer[" << Row << "][" << Column << "] = " << BigSmall[Row][Column] << endl;
}
}
return 0;
}
for( int Row = 2; Row > MAX_ROWS; Row--)
Row
а также MAX_ROWS
оба равны 2, что вы хотите Row > 0
То же самое касается цикла столбцов
Синтаксическая ошибка, вложенный цикл или просто глупая ошибка?
Позднее: вы начинаете свой внутренний цикл в четыре, и продолжаете пока Column
является выше четыре. Это то же самое, что никогда не начинать. Внешний цикл имеет ту же проблему.
Вы должны начать свой цикл в SIZE-1
(Т.е. MAX_ROWS - 1
или же MAX_COLS - 1
) и продолжайте, пока вы находитесь выше или в нуле:
for( int Row = MAX_ROWS-1; Row >= 0 ; Row--) {
for( int Column = MAX_COLS - 1; Column >= 0 ; Column--) {
cout << "Integer[" << Row << "][" << Column << "] = " << BigSmall[Row][Column] << endl;
}
}
Ты имеешь ввиду
for( int Row = MAX_ROWS - 1; Row >=0 ; Row--)
{
for( int Column = MAX_COLS - 1; Column >= 0 ; Column--)
{
cout << "Integer[" << Row << "][" << Column << "] = " << BigSmall[Row][Column] << endl;
}
}
?