使用C++实现星耀结晶金字塔的打印
### 🌟思路分析 要打印一个由星号组成的等腰三角形,关键在于分析每一行星号的数量和空格的数量与当前行数的关系。对于第 `i` 行(从 1 开始计数),空格的数量为 `n - i`,星号的数量为 `2 * i - 1`。 ### 💻代码实现 ```cpp #include <iostream> using namespace std; int main() { int n; cin >> n; for (int i = 1; i <= n; i++) { // 打印空格 for (int j = 0; j < n - i; j++) { cout << " "; } // 打印星号 for (int k = 0; k < 2 * i - 1; k++) { cout << "*"; } cout << endl; } return 0; } ``` ### 📝代码解释 1. **输入读取**:使用 `cin` 读取输入的整数 `n`,表示金字塔的层数。 2. **外层循环**:`for (int i = 1; i <= n; i++)` 控制行数,从第 1 行到第 `n` 行。 3. **内层循环(空格)**:`for (int j = 0; j < n - i; j++)` 打印每行前面的空格,空格数量为 `n - i`。 4. **内层循环(星号)**:`for (int k = 0; k < 2 * i - 1; k++)` 打印每行的星号,星号数量为 `2 * i - 1`。 5. **换行**:每行打印完星号后,使用 `cout << endl;` 换行。 ### ⚙️复杂度分析 - **时间复杂度**:$O(n^2)$,因为有两层嵌套循环。 - **空间复杂度**:$O(1)$,只使用了常数级的额外空间。 ### 💡开发建议 - **输入验证**:可以添加输入验证,确保输入的 `n` 是正整数。 - **代码复用**:可以将打印金字塔的逻辑封装成一个函数,提高代码的复用性。 ######[AI写代码神器 | 538点数解答 | 2026-04-11 19:23:45]
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)354
- JSP 实现商品展示模块:分页、搜索、交互与美观界面全搞定!(字节豆包 | 19点数解答 | 2024-12-13 15:00:43)345
- Python 实现:打印 -n 到 n 范围内所有整数的代码及详解(字节豆包 | 232点数解答 | 2025-12-07 12:30:06)80
- Python代码:轻松打印 0 到输入整数之间的所有整数(字节豆包 | 126点数解答 | 2025-12-12 18:21:54)51
- C++实现:输入整数打印 0 到该整数间所有整数及代码详解(字节豆包 | 228点数解答 | 2025-12-12 18:22:24)62
- Python实现:打印0到输入整数间所有整数的代码解析(字节豆包 | 264点数解答 | 2025-12-12 19:37:01)50
- Python 实现:打印 -n 到 n 范围内所有整数的代码及详解(字节豆包 | 214点数解答 | 2025-12-12 19:40:30)56
- Python实现:打印 0 到 n 之间所有整数的高效方法(讯飞星火 | 569点数解答 | 2025-12-17 12:23:47)68
- Python实现:打印从 -n 到 n 范围内所有整数的代码详解(讯飞星火 | 660点数解答 | 2025-12-17 17:30:53)40
- PyCharm 中用 Selenium 编写自动化测试脚本,轻松登录 eShop 测试平台并点击“我的订单”(字节豆包 | 304点数解答 | 2024-11-06 15:38:30)444
- 用C++实现:揭秘5层星号金字塔代码的奥秘(字节豆包 | 221点数解答 | 2026-01-10 19:46:09)45
- C++ 实现 5 层星号金字塔输出(字节豆包 | 413点数解答 | 2026-03-08 11:20:26)15