c语言输出n阶螺旋矩阵
时间: 2023-05-12 19:03:44 浏览: 98
C语言螺旋矩阵输出
4星 · 用户满意度95%
以下是一个输出 n 阶螺旋矩阵的 C 语言代码:
```c
#include <stdio.h>
void print_spiral_matrix(int n) {
int matrix[n][n];
int i, j, k = 1, c1 = 0, c2 = n - 1, r1 = 0, r2 = n - 1;
while (k <= n * n) {
for (i = c1; i <= c2; i++) {
matrix[r1][i] = k++;
}
for (i = r1 + 1; i <= r2; i++) {
matrix[i][c2] = k++;
}
for (i = c2 - 1; i >= c1; i--) {
matrix[r2][i] = k++;
}
for (i = r2 - 1; i >= r1 + 1; i--) {
matrix[i][c1] = k++;
}
c1++;
c2--;
r1++;
r2--;
}
for (i = 0; i < n; i++) {
for (j = 0; j < n; j++) {
printf("%d ", matrix[i][j]);
}
printf("\n");
}
}
int main() {
int n;
printf("请输入 n 的值:");
scanf("%d", &n);
print_spiral_matrix(n);
return 0;
}
```
这个程序会要求用户输入一个整数 n,然后输出一个 n 阶螺旋矩阵。例如,当 n=4 时,输出的矩阵如下:
```
1 2 3 4
12 13 14 5
11 16 15 6
10 9 8 7
```
阅读全文