编写一个 C++ 程序,打印一个由星号 ( * ) 组成的菱形 菱形的高度由用户输入的奇数决定(输入的奇数应大于 1 且小于 100) 例如,如果用户输入 7 ,则程序应输出如下的菱形:
时间: 2024-10-13 07:05:11 浏览: 30
用c++输出一个菱形(csdn)————程序.pdf
为了编写一个C++程序,首先你需要从用户那里获取菱形的高度作为输入,并根据这个高度生成菱形。以下是一个简单的示例代码:
```cpp
#include <iostream>
using namespace std;
// 函数来打印上半部分菱形
void printTopHalf(int n) {
for (int i = 0; i <= n; ++i) {
// 打印空格
for (int j = n - i; j > 0; --j)
cout << " ";
// 打印星号
for (int k = 0; k < 2 * i + 1; ++k)
cout << "*";
cout << endl;
}
}
// 函数来打印下半部分菱形
void printBottomHalf(int n) {
for (int i = n - 1; i >= 0; --i) {
// 打印空格
for (int j = n - i; j > 0; --j)
cout << " ";
// 只在顶部和底部打印星号
if (i == 0 || i == n - 1)
for (int k = 0; k < 2 * i + 1; ++k)
cout << "*";
else
cout << " ";
cout << endl;
}
}
int main() {
int height;
cout << "请输入菱形的高度(1~99之间的奇数): ";
cin >> height;
// 检查输入是否有效
if (height % 2 == 0 || height < 3) {
cout << "输入无效,高度必须是大于1且小于100的奇数。" << endl;
return 0;
}
printTopHalf(height);
cout << endl;
printBottomHalf(height);
return 0;
}
```
在这个程序中,我们定义了两个函数`printTopHalf`和`printBottomHalf`分别负责打印菱形的上半部和下半部。然后在`main`函数中获取用户输入,验证其有效性,最后调用这两个函数生成菱形并输出。
阅读全文