字母圣诞树

字母圣诞树

1、题目内容

Description
题目描述
打印一个字母圣诞树。

输入
第一行是一个整数K,表示样例的个数。以后每个样例是一个大写英文字母,占一行。

输出
输出对应的字母圣诞树,每行末尾没有空格,每个圣诞树的最后一行前无空格。

样例输入
5
A
B
C
D
E
样例输出
A
AAA
A
AAA
B
BBBBB
A
AAA
B
BBBBB
C
CCCCCCC
A
AAA
B
BBBBB
C
CCCCCCC
D
DDDDDDDDD
A
AAA
B
BBBBB
C
CCCCCCC
D
DDDDDDDDD
E
EEEEEEEEEEE

2、题目分析

这种图形输出题,期末必定会考一个,做的次数多了会发现其实图形题才是比较简单的,不过图形题难点就在如何去找出一个图形与它输入的联系,即就是找到图形的规律。往往字符图形的话都会一下套路:通过输入字母的ACSII码,找到这个字母与字符A的数据差值n,然后就会发现这个数据n跟输出的图形有内在的关联,然后,再将行数与字符联系起来,就能找出图形规律。

3、参考代码

#include<stdio.h>
int main()
{
	int k;
	scanf("%d",&k);
	while(k--)
	{
		char c;
		int i,m,n,j;
		scanf(" %c",&c);
		m=c-'A'+1;
		for(i=1;i<=m;i++)
		{
			 for(j=1;j<=m;j++) //空格与行数的关系 
			 {
			 	printf(" ");
			 }
		     printf("%c\n",('A'+i-1)); //字符与行的关系 
		     for(j=1;j<=m-i;j++) //空格与行的关系 
		     {
		     	printf(" ");
		     }
			 for(j=1;j<=2*i+1;j++) //字符与行的关系 
			 {
			 	printf("%c",('A'+i-1));
			 }	
			 printf("\n");
		}
	}
	return 0;
}

猜你喜欢

转载自blog.csdn.net/weixin_42987451/article/details/83277692