要将一个二维数组逆序输出,可以先将每一行的元素逆序,然后再将每一行逆序输出。
下面是一个示例代码:
#include#define ROWS 3 #define COLS 4 void reverseArray(int arr[][COLS], int rows, int cols) { for (int i = 0; i < rows; i++) { // 将每一行的元素逆序 for (int j = 0, k = cols - 1; j < k; j++, k--) { int temp = arr[i][j]; arr[i][j] = arr[i][k]; arr[i][k] = temp; } } // 将每一行逆序输出 for (int i = rows - 1; i >= 0; i--) { for (int j = 0; j < cols; j++) { printf("%d ", arr[i][j]); } printf("\n"); } } int main() { int arr[ROWS][COLS] = { {1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12} }; reverseArray(arr, ROWS, COLS); return 0; }
运行结果:
9 10 11 12 5 6 7 8 1 2 3 4