例如输入字母E:
A
ABA
ABCBA
ABCDCBA
ABCDEDCBA
第一次用markdown,怎么这么废物的,连自动换行对齐都没有,看来以后的另想他法,乐色啊!最最关键还是没有调大小的,瞎了瞎了
分析:
别管其他,先将一行行分析,第一个是空格,加入输入E那么第一行就是E-A个空格(5-1);输出第一个字符A,第二行就是先打印AB,在逆序打印一个A,形成ABA 就是相当于在B的基础上-1一个大小,第三行同理,那就是
,就是循环for解决
代码
#include<stdio.h>
int main()
{
char a ;
int i,j,k;
while(1)
{
printf("请输入一个大写字母:");
scanf("%c",&a);
if(a=='\n')
continue;
if(getchar()!='\n')
{
printf("我只需要一个字符,不需要其他!\n");
while(getchar()!='\n');
continue;
}
if(a>='A'&&a<='Z')
{
for(i='A';i<=a;i++)
{
for(j=a-i;j>=0;j--)
{
printf(" ");
}
for(k='A';k<=i;k++)
{
printf("%c",k);
}
for(k=i-1;k>='A';k--)
{
printf(“%c”,k);
}
printf("\n");
}
break;
}
else
printf("请重新输入一个大写字母!\n");
}
}
代码调试,显示没毛病输入K