Для передачи двумерного массива в функцию и печати его содержимого в произвольном порядке, можно использовать указатель на указатель на элемент массива.
Пример кода:
```cpp
#include <iostream>
#include <cstdlib>
void printArray(int** array, int rows, int cols) {
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
std::cout << array[i][j] << " ";
}
std::cout << std::endl;
}
}
int main() {
int rows = 3;
int cols = 3;
// Выделяем память под двумерный массив
int** array = new int*[rows];
for (int i = 0; i < rows; i++) {
array[i] = new int[cols];
for (int j = 0; j < cols; j++) {
array[i][j] = rand() % 100; // Заполняем массив случайными значениями
}
}
// Выводим массив до сортировки
std::cout << "До сортировки:" << std::endl;
printArray(array, rows, cols);
// Освобождаем память
for (int i = 0; i < rows; i++) {
delete[] array[i];
}
delete[] array;
return 0;
}
```
Этот код создает двумерный массив случайных чисел, выводит его содержимое до сортировки, а затем освобождает выделенную память. Функция `printArray` принимает указатель на указатель на массив и размеры массива (количество строк и столбцов) и распечатывает содержимое массива.