题解 | #二维数组操作#
二维数组操作
https://www.nowcoder.com/practice/2f8c17bec47e416897ce4b9aa560b7f4
#include <stdio.h> int main() { int m, n; int x1, x2, y1, y2; int x, y; int x3, y3; while (scanf("%d %d\n", &m, &n) != EOF) { int arr[m - 1][n - 1]; scanf("%d %d %d %d\n", &x1, &y1, &x2, &y2); scanf("%d\n", &x); scanf("%d\n", &y); scanf("%d %d", &x3, &y3); if (m >= 0 && m <= 9 && n >= 0 && n <= 9) { printf("0\n"); } else { printf("-1\n"); } if (x1 >= 0 && x1 < m && x2 >= 0 && x2 < m && y1 >= 0 && y1 < n && y2 >= 0 && y2 < n) { printf("0\n"); /* int temp = arr[x1][y1]; arr[x1][y1] = arr[x2][y2]; arr[x2][y2] = temp;*/ } else { printf("-1\n"); } if (x >= 0 && x <= m - 1 && m <= 8 && m > 0 ) { printf("0\n"); } else { printf("-1\n"); } if ( y >= 0 && y <= n - 1 && n <= 8 && n > 0) { printf("0\n"); } else { printf("-1\n"); } /*输出未要求数组实际上改变 if (m + 1 <= 9 && x < m) { printf("0\n"); for (int i = m - 1; i >= x; i--) { for (int j = 0; j < n; j++) { arr[i + 1][j] = arr[i][j]; } } } else { printf("-1\n"); } if (n + 1 <= 9 && y < n ) { printf("0\n"); for (int i = n - 1; i >= y; i--) { for (int j = 0; j < m; j++) { arr[j][i + 1] = arr[j][i]; } } } else { printf("-1\n"); }*/ if (x3 >= 0 && x3 <= m - 1 && y3 >= 0 && y3 <= n - 1) { printf("0\n"); } else { printf("-1\n"); } } return 0; }