1、九宫格简介
九宫格要求每一行每一列斜对角的值相加均相等,
核心代码 : *(*(arr + (h + i + j + N) % N) + (l + i - j + N) % N) = num++
或者 arr[ (h + i + j + N) % N ][ (l + i - j + N) % N] = num++
2、示例代码
#include#define N 5 //九宫格阶数 void main() { int arr[N][N] = {0}; int num = 1; int h, l; h = N / 2 + 1; l = N / 2; for (int i = 0; i < N; i++) { for (int j = 0; j < N; j++) *(*(arr + (h + i + j) % N) + (l + i - j + N) % N) = num++; } for (int i = 0; i < N; i++) { for (int j = 0; j < N; j++) printf("%dt", arr[i][j]); putchar('n'); } }
3、运行结果



