【牛客】---循环双层金字塔
【牛客】---循环双层金字塔
题目链接:https://ac.nowcoder.com/acm/contest/19305/1001
来源:牛客网
题目描述
输出双层金字塔。
输入描述:
多个测试数据。每个测试数据输入一个整数n( 2 <= n <= 9)
输出描述:
输出双层金字塔
示例1
输入
2
5
输出
*
***
*
*
***
*****
*******
*********
*******
*****
***
*
代码如下:
#include<iostream>
using namespace std;
int main(){
int n;
while (cin >> n)//当有输出时循环
{
for (int i = 0; i < n; i++)
{
//输出空格,因为上面空格是逐渐递减的,这里i是逐渐递增,所以我们j<n-i-1是逐渐递减
//并且每次递减1
for (int j = 0; j < n-i-1; j++)
{
cout << " ";
}
//输出*,因为上面*是逐渐递增的,这里i是逐渐递增,所以我们j<2*i+1是逐渐递增
//并且每次递增2
for (int j = 0; j < 2 * i + 1; j++)
{
cout << "*";
}
cout << endl;
}
for (int i =n-1; i > 0; i--)
{
//输出空格,因为下面空格是逐渐递增的,这里i是逐渐递减,所以我们j<n-i是逐渐递增
//并且每次递增1
for (int j = 0; j < n-i; j++)
{
cout << " ";
}
//输出*,因为下面*是逐渐递减的,这里i是逐渐递减,所以我们j<2*i+1是逐渐递减
//并且每次递减2
for (int j = 0; j < 2*i-1; j++)
{
cout << "*";
}
cout << endl;
}
}
return 0;
}

浙公网安备 33010602011771号