c++实现 逆行斜行方阵
时间: 2023-11-13 15:05:37 浏览: 228
迷宫问题的C++算法实现
逆行斜行方阵是一种特殊的矩阵,其中每一行从右向左递减,每一列从上向下递减。以下是一个5x5的逆行斜行方阵的例子:
```
5 4 3 2 1
4 3 2 1 5
3 2 1 5 4
2 1 5 4 3
1 5 4 3 2
```
下面是一个用C语言实现的程序:
```c
#include <stdio.h>
int main() {
int n; // 矩阵大小
printf("请输入逆行斜行方阵的大小:");
scanf("%d", &n);
int matrix[n][n]; // 定义二维数组
// 生成逆行斜行方阵
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
matrix[i][j] = (n - j + i) % n + 1;
}
}
// 输出矩阵
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
printf("%d ", matrix[i][j]);
}
printf("\n");
}
return 0;
}
```
在这个程序中,我们首先从用户那里获取逆行斜行方阵的大小,然后定义一个二维数组来存储矩阵。接下来,我们使用两个嵌套的循环来生成矩阵,使用(i, j)坐标计算每个元素的值。最后,我们再一次循环打印矩阵。
阅读全文