镂空三角形-题解

描述

把一个字符三角形掏空,就能节省材料成本,减轻重量,但关键是为了追求另一种视觉效果。
在设计的过程中,需要给出各种花纹的材料和大小尺寸的三角形样板,通过电脑临时做出来,以便看看效果。

输入描述

每行包含一个字符和一个整数n(0<n<41),不同的字符表示不同的花纹,整数n表示等腰三角形的高。
显然其底边长为2n-1。如果遇到@字符,则表示所做出来的样板三角形已经够了。

输出描述

每个样板三角形之间应空上一行,三角形的中间为空。显然行末没有多余的空格。

代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include <bits/stdc++.h>
using namespace std;

int main() {
char a;
int n, k = 0;
while (cin >> a >> n, a != '@') {
if (k != 0){
cout << endl;
}
k++;
for (int i = 1; i < n; i++) {
for (int j = 0; j < n - i; j++){
cout << " ";
}
cout << a;
if (i != 1) {
for (int j = 0; j < 2 * i - 3; j++){
cout << " ";
}
cout << a << endl;
} else{
cout << endl;
}
}
for (int j = 0; j < 2 * n - 1; j++){
cout << a;
}
cout << endl;
}
return 0;
}

镂空三角形-题解
https://chenxi-tijie.pages.dev/2025/07/镂空三角形-题解/
作者
chenxi
发布于
2025年7月3日
许可协议