用C语言打一个蛇形矩阵
时间: 2024-09-29 15:02:10 浏览: 60
在C语言中打印蛇形矩阵通常涉及到两层循环以及一些条件判断。以下是一个简单的示例,使用嵌套循环来生成一个从小到大排列的蛇形矩阵:
```c
#include <stdio.h>
void printSnake(int n) {
int matrix[n * n], i = 0, j = 0;
// 写入矩阵的上半部分
for (i = 0; i < n; ++i) {
for (j = i; j < n; ++j) {
matrix[j] = i + j + 1;
}
if (i < n - 1)
printf("\n");
}
// 写入矩阵的下半部分,从右下角开始逆序
for (i = n - 2; i >= 0; --i) {
for (j = n - 1; j >= i; --j) {
matrix[j] = n * n - matrix[j];
}
if (i > 0)
printf("\n");
}
}
int main() {
int size;
printf("请输入矩阵大小:");
scanf("%d", &size);
printSnake(size);
return 0;
}
```
这个程序首先打印出一个由1到n*n的数组成的上半部分蛇形矩阵,然后从右下角开始打印下半部分的倒序数列,形成了完整的蛇形效果。
阅读全文