C++打印漏斗形星号阵列:简单易懂的代码实现
C++打印漏斗形星号阵列:简单易懂的代码实现
想要用C++打印一个n阶漏斗形状的星号阵列吗?这个阵列应该上下最宽,中间最窄,中间行只有一个星号,然后每行左右各多一个星号向上下扩展。
以下代码可以实现这个功能:
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n;
// 上半部分漏斗
for (int i = 1; i <= n; i++) {
for (int j = 1; j < i; j++) {
cout << '*';
}
for (int k = 1; k <= (2 * n - 1) - 2 * (i - 1); k++) {
cout << ' ';
}
for (int j = 1; j < i; j++) {
cout << '*';
}
cout << endl;
}
// 下半部分漏斗
for (int i = n - 1; i >= 1; i--) {
for (int j = 1; j < i; j++) {
cout << '*';
}
for (int k = 1; k <= (2 * n - 1) - 2 * (i - 1); k++) {
cout << ' ';
}
for (int j = 1; j < i; j++) {
cout << '*';
}
cout << endl;
}
return 0;
}
这段代码首先读取一个整数n,表示漏斗的阶数。然后,它使用两个嵌套循环分别打印漏斗的上半部分和下半部分。
- 外层循环控制行数。
- 内层循环控制每行打印的星号和空格数量。
希望这段代码对你有所帮助!
原文地址: https://www.cveoy.top/t/topic/ESN 著作权归作者所有。请勿转载和采集!