C++生成圣诞树算法

请实现一个返回指定高度圣诞树的函数。

例如height = 5应返回:

    *    
   ***   
  *****  
 ******* 
*********

首先,可以每一层的*是成等差数列的增加方式增加的,每一层*数量为2*i - 1个。然后*号的前后空格数是对称的,每一层前后空格数都为高度n - 层数 t个。

根据上述的分析我们就可以编写出代码了:

#include<bits/stdc++.h>
using namespace std;
int main() {
		int n;
		cin >> n;
		for (int h = 1; h <= n; h++)
		{
			for (int i = 1; i <= n - h; i++)
				cout << " ";
			for (int i = 1; i <= 2 * h - 1; i++)
				cout << "*";
			for (int i = 1; i <= n - h; i++)
				cout << " ";
			cout << endl;
 
		}
    return 0;
}


版权声明:本文为weixin_37823499原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。