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("
");
			}
			m1 = m1-1; m2 = m2+1;
			for (int j = 1; j <=m2; j++)
			{
				if (j == m1 || j == m2)
				{
					putchar(c);
				}
				else
				{
					printf(" ");
				}
			}
			printf("
");
		}
		for (int i = 1; i <= 2 * n - 1; i++)
		{
			putchar(c);
		}
		printf("
");
                printf("
");
	}
	return 0;
}
Yesterday is history,tomorrow ismystery,but today is a gift!That why it is called Present!
原文地址:https://www.cnblogs.com/VictorierJwr/p/12408778.html