C++实现输出指定行数的等腰三角形
### 🍭实现思路 要输出一个 `n` 行的等腰三角形,我们可以通过循环来控制行数和每行的字符输出。对于每一行,需要先输出一定数量的空格,再输出一定数量的星号。 ### 💻代码示例 ```cpp #include <iostream> using namespace std; int main() { int n; cout << "请输入一个整数 n: "; cin >> n; for (int i = 1; i <= n; i++) { // 输出空格 for (int j = 1; j <= n - i; j++) { cout << " "; } // 输出星号 for (int k = 1; 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 = 1; j <= n - i; j++)` 用于输出每行前面的空格,空格数量为 `n - i`。 4. **内层第二个循环**:`for (int k = 1; k <= 2 * i - 1; k++)` 用于输出每行的星号,星号数量为 `2 * i - 1`。 5. **换行**:`cout << endl;` 用于在每行输出完星号后换行。 ### 🚀进阶使用指南 - **性能优化**:此代码的时间复杂度为 $O(n^2)$,在当前需求下已经是最优解,无需进一步优化。 - **错误处理**:可以添加对用户输入的检查,确保输入的 `n` 是正整数。例如: ```cpp #include <iostream> using namespace std; int main() { int n; cout << "请输入一个整数 n: "; while (!(cin >> n) || n <= 0) { cin.clear(); cin.ignore(numeric_limits<streamsize>::max(), '\n'); cout << "输入无效,请输入一个正整数: "; } for (int i = 1; i <= n; i++) { for (int j = 1; j <= n - i; j++) { cout << " "; } for (int k = 1; k <= 2 * i - 1; k++) { cout << "*"; } cout << endl; } return 0; } ``` - **扩展功能**:可以将输出的字符改为用户指定的字符,或者将等腰三角形改为其他形状。 ### 📚学习资源 - C++ 官方文档:https://en.cppreference.com/w/ - 《C++ Primer》:经典的 C++ 学习书籍,适合初学者和有一定基础的开发者。 ### 💡开发建议 - **代码注释**:在代码中添加必要的注释,提高代码的可读性。 - **模块化**:将输出等腰三角形的逻辑封装成一个函数,提高代码的复用性。 ######[AI写代码神器 | 793点数解答 | 2026-05-18 21:01:54]
- C++ 实现三角形类型判断:小心三边条件、判断顺序与整数溢出!(DeepSeek | 214点数解答 | 2025-08-24 17:31:55)228
- C++ 实现:根据三边长度判断三角形类型(附代码及详细解释)(字节豆包 | 437点数解答 | 2026-01-24 20:19:56)69
- 利用C++判断三条边能否构成三角形及特殊三角形类型(字节豆包 | 234点数解答 | 2026-04-12 16:28:21)20
- C++ 实现根据三边判断三角形类型(字节豆包 | 568点数解答 | 2026-03-14 20:56:16)54
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)391
- 三角形判断程序:小心三点,精准判定三边类型!(字节豆包 | 213点数解答 | 2025-10-03 20:24:40)115
- C++ 实现三角形类型判断:条件判断与数据合法性处理要点(字节豆包 | 324点数解答 | 2025-10-03 20:25:07)237
- C++:根据三边长度判断三角形类型(含等边、等腰)(字节豆包 | 189点数解答 | 2025-12-27 20:42:17)51
- C++程序:根据三边长度判断三角形类型(字节豆包 | 188点数解答 | 2026-02-03 14:02:35)80
- 三角形类型判断代码的错误修正(字节豆包 | 453点数解答 | 2026-02-14 21:33:30)50
- 代码改错:精确判断三条边构成的三角形类型(字节豆包 | 291点数解答 | 2026-02-25 19:15:56)20
- C++实现根据三边长度判断三角形类型(字节豆包 | 361点数解答 | 2026-03-14 19:51:22)14