4. 寫一個程式讓使用者打入大寫英文字母,然後使用巢狀迴圈做個金字塔像這樣:
A
ABA
ABCBA
ABCDCBA #include “stdafx.h” #include <stdio.h> //引入stdio.h檔 #include <stdlib.h> //引入stdlib.h檔 int main(int argc, char* argv[]) { int ch=0, space_num=0, i,j; //宣告ch、space_num、i和j變數備用 printf(“Please enter a english charectar(A-Z):”); scanf(“%c”, &ch); //讓使用者輸入字元,指定到ch變數中 space_num=ch-‘A’; //算金字塔的第一行要有幾個空格 for (i=0;i < ch-‘A’+1; i++) //FOR迴圈,從0開始到ch-A+1的值(金字塔有幾層),每次累加1 { if (space_num-i != 0) //如果空格數是0就跳過 printf(“%*c”,space_num-i,0); //印出指定數量的空格(最少會有一個,由i去控制它) for (j=’A’;j <= ‘A’+i; j++) printf(“%c”,j); //印出A到(由i去控制的)字母的所有字元 for (j=(‘A’+i)-1;j >= ‘A’; j–) printf(“%c”,j); //往回印 (由i去控制的)字母到A的所有字元 printf(“\n”); //印出換行 } system(“PAUSE”); //「按任意鍵繼續…」的程式 return 0; //函數結束,傳回整數0並跳回原本呼叫的地方 }