7-123 空心字母金字塔 (10 分)
输入一个大写的英文字母,输出空心的字母金字塔。
输入格式:
一个大写英文字母。
输出格式:
一个空心的大写英文字母金字塔,其中第1层的“A”在第1行的第40列,列从1开始计数。
输入样例:
E
输出样例:
代码如下:
#include<stdio.h>
int main(){
char n;
scanf("%c",&n);
int x=n-65;
for(int i=39;i>0;i--){ //第一行↓
printf(" ");
}//字前空格
printf("A\n"); //第一行↑
if(x==0)
return 0;//输入为A,直接结束程序.
int k=1;
for(int j=n-65;j>1;j--){ //中间行↓
for(int i=39-k;i>0;i--){
printf(" ");
}//字前空格
printf("%c",'A'+k); //开始字母
for(int i=0;i<2*k-1;i++){
printf(" ");
}//字间空格
printf("%c\n",'A'+k); //末尾字母
k++;
} //中间行↑
for(int i=39-x;i>0;i--){ //最末行↓
printf(" ");
}//字前空格
for(int i=1;i<=2*x+1;i++){
printf("%c",n);
} //最末行↑
return 0;
}