c++ 打印n阶实心菱形
时间: 2024-10-25 20:17:12 浏览: 35
在C++中,打印n阶实心菱形通常通过嵌套循环来实现,外层控制行数,内层控制每行打印的空格和字符。下面是一个简单的示例,展示了如何打印一个5阶的实心菱形:
```cpp
#include <iostream>
void printDiamond(int n) {
for (int i = 0; i <= n; ++i) {
// 上半部分
if (i <= n / 2) {
// 前半行空格
for (int j = n - i; j > 0; --j)
std::cout << " ";
// 打印星号
for (int k = 0; k < 2 * i - 1; ++k)
std::cout << "*";
std::cout << "\n";
}
// 下半部分
else {
// 空格减少
int spaces = n - i;
// 最后一行只打印星号
if (i == n)
spaces = 0;
// 打印星号
for (int k = 0; k < spaces; ++k)
std::cout << " ";
for (int k = 0; k < 2 * (n - i) - 1; ++k)
std::cout << "*";
std::cout << "\n";
}
}
}
int main() {
int n;
std::cout << "请输入菱形的阶数: ";
std::cin >> n;
printDiamond(n);
return 0;
}
```
当你运行这个程序并输入5时,它将打印出以下5阶实心菱形:
```
*
***
*****
*******
*********
*******
*****
***
*
```
阅读全文