Страницы

Поиск по вопросам

понедельник, 25 февраля 2019 г.

Ошибка в сортировке двумерного массива

void main(void) {
srand(time(NULL));
int A[N][M], circles = N + M, swap;
for (int i = 0; i < N; i++) { for (int j = 0; j < M; j++) { A[i][j] = 3 + rand() % 100; } }
while (circles) { for (int i = 0; i < (circles - 1); i++) { if (*(A + i) > *(A+i+1)) /*ругается на этот if*/ { swap = *(A + i); *(A + i) = *(A + i + 1); *(A + i + 1) = swap; } } circles--; }
}
Пишет ошибку:
Error 3 error C2106: '=' : left operand must be l-value
В чём может быть дело?


Ответ

Вы пытаетесь сравнивать строки матрицы и менять их между собой, однако оператора сравнения строк матрицы и оператора присваивания int[] к int[] у вас не существует. На то и ругается.

Комментариев нет:

Отправить комментарий