题目描述
给定一个整数 n,请打印一个具有 n 层结构的三角形金字塔,例如当 n=3 时,打印如下图形:
/\
/__\
/\ /\
/__\/__\
/\ /\ /\
/__\/__\/__\
输入格式
单个整数:表示 n。
输出格式
根据题意输出层次为 n 的三角形金字塔。
数据范围
1≤n≤30。
样例数据
输入:
3
输出:
输入:
8
输出:
题解
本题关键点:掌握图的规律,循环嵌套。代码如下。
#include <iostream>
using namespace std;
int main() {
int n,k,p;
cin >> n;
for(int i = 1; i <= 2 * n; i++) {
k=2 * n - i;
for(int j = 1; j <= k; j++) {
cout << ' ';
}
p=(i + 1) / 2;
for(int j = 1; j <= p; j++) {
if (i % 2 == 0) {
cout << "/__\\";
} else {
cout << "/\\ ";
}
}
cout << endl;
}
return 0;
}