C++描述:键盘输入自然数N,打印出如右图规律的图形。如:N=3时的图形为: * *** ***** *** * 输入:只有一个整数N,为菱形的行数 (其中3≤N≤9)。 输出:输出的图形。
时间: 2024-10-23 11:01:44 浏览: 21
c代码-编写程序输出下列图形: * *** ***** *******
5星 · 资源好评率100%
在C++中,你可以使用嵌套循环以及字符串拼接的方式来实现这个任务。这里是一个简单的示例代码,它会按照给定的自然数N生成菱形图案:
```cpp
#include <iostream>
#include <string>
void printDiamond(int n) {
// 上半部分
for (int i = 0; i <= n; ++i) {
// 左侧星号
std::string stars = "*";
// 右侧空格填充
int spaces = n - i;
if (spaces > 0) {
std::string spacesStr(spaces, ' ');
}
// 拼接并输出
std::cout << spacesStr + stars + "\n";
// 如果不是第一行或最后一行,增加星号
if (i != 0 && i != n) {
stars += "*";
}
}
// 下半部分
for (int i = n - 1; i >= 0; --i) {
// 类似于上半部分,只是减少星号的数量
stars = i == 0 ? "*" : stars.substr(0, stars.size() - 2);
spaces = n - i - 1;
std::cout << spacesStr + stars + "\n";
}
}
int main() {
int N;
std::cin >> N;
printDiamond(N);
阅读全文