2、编写一个程序,它能够读入菱形的对角线长度(对角线长度相等且为奇数,范围1~20),然后打印一个由星号和空格组成的实心菱形。 要求:对角线长可以运行时输入。使用C++语言
时间: 2024-10-21 13:15:39 浏览: 32
c语言输入模板
在C++中,要编写一个程序来打印一个菱形,首先你需要从用户那里获取对角线长度作为输入。由于题目要求对角线长度相等且为奇数,你可以使用`cin`来接收用户的输入,并添加一些条件判断。下面是一个简单的示例:
```cpp
#include <iostream>
using namespace std;
int main() {
int n;
cout << "请输入菱形的对角线长度(奇数,1到20之间):" << endl;
cin >> n; // 接收用户输入
// 检查输入的合法性
if (n % 2 == 0 || n < 1 || n > 20) {
cout << "错误!对角线长度必须是1到20之间的奇数。" << endl;
return 0;
}
// 打印菱形
for (int i = 0; i < n; ++i) {
// 上半部分:星号向中心递增
for (int j = 0; j < n - i - 1; ++j)
cout << ' ';
for (int k = 0; k <= i; ++k)
cout << '*';
cout << endl;
// 下半部分:星号向边缘递减
if (i != 0) {
for (int j = 0; j < i; ++j)
cout << ' ';
for (int k = n - 2; k >= i; --k)
cout << '*';
cout << endl;
}
}
return 0;
}
```
在这个程序中,我们先获取输入,然后检查对角线长度是否满足条件。接着,通过两个嵌套循环分别打印菱形的上半部分和下半部分。
阅读全文