#include <stdio.h>
int main() {
char s[2];
int c,y,x,ya,xa,minyaxa;
while (1) {
scanf("%1s",s);
c=s[0];
if (c=='#') break;
c=c-'A';
for (y=-c;y<=c;y++) {
for (x=-c;x<=c;x++) {
xa=x; if (xa<0) xa=-xa;
ya=y; if (ya<0) ya=-ya;
minyaxa=xa; if (minyaxa>ya) minyaxa=ya;
printf("%c",c-minyaxa+'A');
}
printf("\n");
}
}
return 0;
}
供参考:
#include<stdio.h>
int main()
{
char ch,i,k;
int n,j,m;
while(scanf("%c",&ch)==1 && ch != '#')
{
n = ch - 'A';
for(i='A',m=0;i<=ch;m++,i++)
{
for(j=0,k=i;j<=n;j++)
printf("%c",j<=m?k:++k);
for(j=n-1;j>=0;j--)
printf("%c",j>=m?--k:k);
printf("\n");
}
for(i-=2,m-=2;i>='A';m--,i--)
{
for(j=0,k=i;j<=n;j++)
printf("%c",j<=m?k:++k);
for(j=n-1;j>=0;j--)
printf("%c",j>=m?--k:k);
printf("\n");
}
}
return 0;
}