[c]输出字符金字塔

[c]输出字符金字塔_第1张图片

我们可以把字符金字塔类比数字金字塔

输入3

输出 类似下图

 [c]输出字符金字塔_第2张图片

下面附上我的代码,可能有些繁琐

#include
int main()
{
	char s;
	scanf("%c",&s);
	int len=s-64;//将字符的ascii码值减去64得到循环次数,比如你输入A,len值是1,循环一次
	for(int i=1;i<=len;i++)//进行外循环,i=1,你要输出1个字母,i=2,你要输出3个字母,以此类推
	{
		for(int k=i;k<=len-1;k++)//输出空格
		{
			printf(" ");
		}
		int o=64;
		for(int b=1;b<=2*i-1;b++)//进行内循环,输出每一行的字母
		{
			if(b<=i)
			{
				o++;
				printf("%c",o);
			}
			else
			{
				o--;
				printf("%c",o);
			}
		}
		printf("\n");//内循环结束换行
	}
	return 0;
}

[c]输出字符金字塔_第3张图片

你可能感兴趣的:(c语言,算法,数据结构)