要將一個二維數組逆序輸出,可以先將每一行的元素逆序,然后再將每一行逆序輸出。
下面是一個示例代碼:
#include <stdio.h>
#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