这是我写的
#include<stdio.h>
int main(void)
{
int i,j,k;
char shuru,shuchu,kaishi = 'A';
scanf("%c",&shuru);
for(i = 0;i<=(shuru-kaishi);i++){
for(j = (shuru-kaishi-i);j>0;j--){
printf(" ");
}
for(shuchu = 'A',k = 0;k<=i;shuchu++,k++){
printf("%c",shuchu);
}
shuchu--;
shuchu--;//也可以写成shuchu-=2;
for(k = 0;k<i;shuchu--,k++){
printf("%c",shuchu);
}
// 下面三行不需要,右边不需要空格
// for(j = (shuru-kaishi-i);j>0;j--){ //
// printf(" ");
// }
printf("\n");
}
return 0;
}
下面是答案
俺也不知道这乱七八糟的中文咋搞的
/*
绗叚绔狅細缂栫▼缁冧範 5
*/
#include <stdio.h>
int main(void){
int i ,j,num;
char c ;
printf("Enter the core char you want to print(A...Z):");
scanf("%c",&c);
char ch = 'A';
num = c - 'A' + 1;
/* 杈撳叆瀛楃鐨凙SCII鐮佸噺鍘?'A' 鍔?1鐨勫埌鍗佽繘鍒剁粨鏋?num
* num鍗虫槸闇€瑕佹墦鍗扮殑浠?A 寮€濮嬬殑瀛楃鏁帮紝涔熸槸鎵撳嵃鐨勬€昏鏁?*/
for (i = 1; i <= num ; i++){
/* 澶栭儴寰幆鎺у埗鎵撳嵃琛屾暟锛?num 涓鸿緭鍏ュ瓧绗﹀拰 A 鐨勫樊鍔?1* */
for (j = 0; j < num - i ; j++)
printf(" ");
/* 鎵撳嵃绌烘牸锛岀┖鏍兼暟涓烘€诲瓧绗︽暟鍑忓幓褰撳墠琛屽簲鎵撳嵃鐨勫瓧绗︽暟銆?
* 鍗筹紝鏈搴旀墦鍗扮┖鏍兼暟 + 搴旀墦鍗板瓧绗︽暟 = 鎬诲瓧绗︽暟锛堟€昏鏁帮級*/
for (ch ='A'; j < num ; j++)
printf("%c",ch++);
/* 鎵撳嵃姝e簭瀛楃鏁帮紝闇€瑕乧h鍋氶€掑鎿嶄綔锛岃捣濮嬪€?j 鍦ㄧ┖鏍煎宸茬粡閫氳繃寰幆
* 鍋氫簡鍒濆鍖栵紝鍥犳锛屽彧鎵撳嵃鍓╀綑瀛楃鏁般€?*/
for (j = 1, ch-=2; j < i ; j++,ch--)
printf("%c",ch);
/* 鎵撳嵃閫嗗簭瀛楃锛屽瓧绗﹀仛閫掑噺鎿嶄綔銆?/
printf("\n");
}
return 0;
}