C++ 实现蛇形矩阵:代码示例和解析
C++ 实现蛇形矩阵:代码示例和解析
本文将提供 C++ 代码示例,展示如何生成蛇形矩阵。代码简洁易懂,并附带运行结果示例,帮助您理解蛇形矩阵的生成逻辑。
代码示例
#include <iostream>
using namespace std;
void printSnakeMatrix(int n) {
int matrix[n][n];
int num = 1;
// 填充蛇形矩阵
for (int i = 0; i < n; i++) {
if (i % 2 == 0) {
for (int j = 0; j < n; j++) {
matrix[i][j] = num++;
}
} else {
for (int j = n - 1; j >= 0; j--) {
matrix[i][j] = num++;
}
}
}
// 打印蛇形矩阵
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
cout << matrix[i][j] << '\t';
}
cout << endl;
}
}
int main() {
int n;
cout << '请输入矩阵的大小:';
cin >> n;
printSnakeMatrix(n);
return 0;
}
运行结果
运行程序后,输入矩阵的大小,例如输入 5,则会打印出一个 5x5 的蛇形矩阵:
请输入矩阵的大小:5
1 2 3 4 5
10 9 8 7 6
11 12 13 14 15
20 19 18 17 16
21 22 23 24 25
代码解析
该代码使用双重循环来填充蛇形矩阵,其中外层循环遍历矩阵的行,内层循环遍历矩阵的列。
- 奇数行:从左到右填充数字
- 偶数行:从右到左填充数字
通过这种方式,就可以生成一个蛇形矩阵。
总结
本文提供了一个 C++ 代码示例,展示了如何生成蛇形矩阵。通过代码示例和运行结果,您可以更清晰地理解蛇形矩阵的生成逻辑。希望本文对您有所帮助。
原文地址: https://www.cveoy.top/t/topic/pZSA 著作权归作者所有。请勿转载和采集!