c++中从键盘输入一个正奇数,则输出由*组成的菱形
时间: 2024-12-20 22:15:45 浏览: 13
在 C++ 中,你可以使用 while 循环和条件判断来获取用户输入的正奇数,并利用嵌套循环生成对应的菱形星号图案。下面是一个简单的示例程序:
```cpp
#include <iostream>
int main() {
int n;
std::cout << "请输入一个正奇数: ";
std::cin >> n; // 获取用户输入
if (n <= 0 || n % 2 == 0) { // 检查输入是否为正奇数
std::cout << "输入不是正奇数,已退出。\n";
return 0;
}
// 上半部分菱形
for (int i = 0; i < n; ++i) {
// 左侧空格
for (int j = n - i - 1; j > 0; --j)
std::cout << " ";
// 菱形顶部的*
for (int k = 0; k < 2 * i + 1; ++k)
std::cout << "*";
std::cout << "\n"; // 换行
}
// 下半部分菱形
for (int i = n - 2; i >= 0; --i) {
// 左侧空格
for (int j = n - i - 1; j > 0; --j)
std::cout << " ";
// 菱形底部的*
for (int k = 0; k < 2 * i + 1; ++k)
std::cout << "*";
std::cout << "\n";
}
return 0;
}
```
阅读全文