酷代码 AI
菜单
服务商
DeepSeek字节豆包
更多选项

C++ 实现行列交替输出 '#' 和 '*' 字符函数

根据你的描述,小核桃想要实现一个**规律性的字符输出**——即在1、3、5行输出5个 `#`,在2、4行输出5个 `*`。这是一个非常经典的循环与函数调用练习题。 下面我们用 **C++** 来补全这段代码。 --- ## 🖥️ C++ 完整代码 ```cpp #include <iostream> using namespace std; // 🟡 函数:输出 n 个 '#' void printSharp(int n) { for (int i = 0; i < n; i++) { cout << '#'; } cout << endl; } // 🟡 函数:输出 n 个 '*' void printStar(int n) { for (int i = 0; i < n; i++) { cout << '*'; } cout << endl; } int main() { int n = 5; // 每行输出的字符个数 // 🔄 循环5行,奇数行输出 #,偶数行输出 * for (int i = 1; i <= 5; i++) { if (i % 2 == 1) { printSharp(n); } else { printStar(n); } } return 0; } ``` --- ## 🧠 代码详解 **1️⃣ 函数定义** - `printSharp(int n)`:循环 `n` 次,每次输出一个 `#`,最后换行。 - `printStar(int n)`:循环 `n` 次,每次输出一个 `*`,最后换行。 **2️⃣ 主函数 `main()`** - 定义变量 `n = 5`,表示每行输出的字符个数。 - 使用 `for` 循环,从第 `1` 行到第 `5` 行。 - 判断行号 `i`: - 奇数行(1, 3, 5) → 调用 `printSharp(n)` - 偶数行(2, 4) → 调用 `printStar(n)` **3️⃣ 输出效果** ``` ##### ***** ##### ***** ##### ``` --- ## 📋 关键点 | 行号 | 类型 | 调用的函数 | 输出 | |------|------|------------|------| | 1 | 奇数 | printSharp | ##### | | 2 | 偶数 | printStar | ***** | | 3 | 奇数 | printSharp | ##### | | 4 | 偶数 | printStar | ***** | | 5 | 奇数 | printSharp | ##### | --- ## 💡 进阶开发建议 - 🟢 **代码复用性**:可以将 `5` 改为变量,或者通过输入指定行数和每行字符数,提升灵活性。 - 🟡 **函数泛化**:可以写一个通用函数 `void printChar(char ch, int n)`,一个函数即可处理所有字符,减少重复代码。 - 🟠 **输出格式**:注意每个函数内要加 `endl` 或 `"\n"` 换行,否则所有字符会挤在一行。 --- ## 📚 推荐学习资源 - **C++ 基础教程**:[cplusplus.com](http://www.cplusplus.com/doc/tutorial/) - **函数与循环练习**:LeetCode 上搜索 "打印图形" 类简单题 - **常见陷阱**: - 忘记加 `endl` 导致格式错误 - 循环条件写错(如从0开始导致行号奇偶判断相反) --- ######[AI写代码神器 | 804点数解答 | 2026-07-10 21:27:29]

相关提问
本站限时免费提问中
实用工具查看更多
Linux在线手册 [开发类]
Jquery在线手册 [开发类]
今日油价 [生活类]
图片互转base64 [开发类]
时间转换器 [开发类]