求输入任意的两个正整数m 和n(m!= n)c++代码,构造m* n “之字形”矩阵,以下示例为3 *5 矩阵: 1 2 6 7 12 3 5 8 11 13 4 9 10 14 15
时间: 2024-10-19 12:13:49 浏览: 36
在C++中,你可以通过嵌套循环和条件判断来构造“之字形”矩阵。下面是一个简单的示例代码,它接受两个输入 `m` 和 `n`,并生成对应的矩阵:
```cpp
#include <iostream>
using namespace std;
void zigzagMatrix(int m, int n) {
int matrix[m][n]; // 创建矩阵
for (int i = 0; i < m; ++i) {
if (i % 2 == 0) { // 当行数偶数时,从左向右填充
for (int j = 0; j < n; ++j) {
matrix[i][j] = i * n + j + 1;
}
} else { // 当行数奇数时,从右向左填充
for (int j = n - 1; j >= 0; --j) {
matrix[i][j] = i * n + j + 1;
}
}
}
// 打印矩阵
for (int i = 0; i < m; ++i) {
for (int j = 0; j < n; ++j) {
cout << matrix[i][j] << " ";
}
cout << endl;
}
}
int main() {
int m, n;
cout << "Enter the number of rows and columns (m, n): ";
cin >> m >> n;
zigzagMatrix(m, n);
return 0;
}
```
当你运行这个程序并输入3和5时,会得到预期的3*5“之字形”矩阵。如果你想要测试其他值,只需要改变main函数中的 `m` 和 `n`。
阅读全文