35: 空心三角形
35 空心三角形
作者: xxx时间限制: 1S章节: 循环
问题描述 :
把一个字符三角形掏空,就能节省材料成本,减轻重量,但关键是为了追求另一种视觉效果。在设计的过程中,需要给出各种花纹的材料和大小尺寸的三角形样板,通过电脑临时做出来,以便看看效果。
输入说明 :
第一行是一个数字T ( T < 30 ),接下来有T 行,表示有T 组测试数据 :
每行包含一个字符和一个整数n(0<n<41),不同的字符表示不同的花纹,整数n表示等腰三角形的高。显然其底边长为2n-1。
输出说明 :
每个样板三角形之后应空上一行。
样板三角形最下面一行没有空格,其余行的最后没有空格。
输入范例 :
2
g 3
@ 4
输出范例 :
代码:
#include <stdio.h>
int main()
{
int T, n;
char c;
scanf("%d", &T);
int m1, m2;
for (int k = 0; k < T; k++)
{
getchar();
c = getchar();
scanf("%d", &n);
m1 = n; m2 = n;
for (int i = 1; i < n-1; i++)
{
if (i == 1)
{
for (int j = 1; j < n; j++)
{
printf(" ");
}
putchar(c);
printf("\n");
}
m1 = m1-1; m2 = m2+1;
for (int j = 1; j <=m2; j++)
{
if (j == m1 || j == m2)
{
putchar(c);
}
else
{
printf(" ");
}
}
printf("\n");
}
for (int i = 1; i <= 2 * n - 1; i++)
{
putchar(c);
}
printf("\n");
printf("\n");
}
return 0;
}
Yesterday is history,tomorrow ismystery,but today is a gift!That why it is called Present!