题目描述
输入一个整数n,(1<=n<=20),输出一个空心菱形,其中每个边由n个'*'组成。
输入
输入包含一个整数,n(1<=n<=20)
输出
输出一个空心菱形,每个边由n个'*'组成
样例输入
5
样例输出
* * * * * * * * * * * * * * * *
#include<iostream>
using namespace std;
int main()
{
int n;
cin >> n;
//上半部分 可以参照打印正三角的思路
for (int i = 1; i <= n; i++)
{
for (int j = 0; j < n - i; j++)//第i行*前打印n-i个空格
{
cout << " ";
}
cout << "*";
for (int j = 0; j < 2 * i - 3; j++)
{
cout << " ";
}
if (i != 1)
{
cout << "*";
}
cout << endl;
}
//下半部分 同理参照打印倒三角的思路
for (int i = 1; i <= n - 1; i++)
{
for (int j = 0; j < i; j++)
{
cout << " ";
}
cout << "*";
for (int j = 0; j < 2 * (n - i) - 3; j++)
{
cout << " ";
}
if (i != n - 1)
{
cout << "*";
}
cout << endl;
}
return 0;
}
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档