酷代码 AI
菜单
服务商

c++小核桃想生成一个特定样式的矩阵,她将其命名为 “竖条纹小行星矩阵”。请你编写一个程序,根据给定的行数n和列数m生成并输出这个n行m列的矩阵。 输入: 两个整数n与m,分别表示 "竖条纹小行星矩阵"的行数与列数。 输出: 一个行数为n,列数为m的“竖条纹小行星矩阵”。

```cpp #include <iostream> using namespace std; // 生成并输出竖条纹小行星矩阵 void generateVerticalStripeMatrix(int n, int m) { for (int i = 0; i < n; ++i) { for (int j = 0; j < m; ++j) { // 竖条纹小行星矩阵规则:奇数列输出 *,偶数列输出 . if (j % 2 == 0) { cout << '.'; } else { cout << '*'; } } cout << endl; } } int main() { int n, m; cin >> n >> m; generateVerticalStripeMatrix(n, m); return 0; } ``` 代码解释 1. 函数 `generateVerticalStripeMatrix`: - 该函数接收两个整数参数 `n` 和 `m`,分别代表矩阵的行数和列数。 - 使用两层嵌套的 `for` 循环遍历矩阵的每一个位置。外层循环控制行数,内层循环控制列数。 - 对于每一个位置 `(i, j)`,通过判断列数 `j` 是否为偶数来决定输出字符。若 `j` 为偶数,输出 `.`;若 `j` 为奇数,输出 `*`。 - 内层循环结束后,输出换行符,以开始下一行的输出。 2. 主函数 `main`: - 从标准输入读取两个整数 `n` 和 `m`,分别表示矩阵的行数和列数。 - 调用 `generateVerticalStripeMatrix` 函数,传入 `n` 和 `m` 作为参数,生成并输出竖条纹小行星矩阵。 复杂度分析 - 时间复杂度:$O(n \times m)$,因为需要遍历矩阵的每一个位置。 - 空间复杂度:$O(1)$,只使用了常数级的额外空间。 [2026-01-02 19:42:40 | AI问答 | 455点数解答]

相关提问
发财导航,免费问AI
实用工具查看更多