問題描述:寫一程式依據輸入印出圖形.

當輸入 3 時,印出
a
a
a
a
a
a
b
b
b
a
a
b
c
b
a
a
b
b
b
a
a
a
a
a
a

將 a 轉換成 1、b 轉換成 2、c 轉換成 3,
則輸出範圍是 1 至 2*n-1
調整 x 與 y 的範圍為 -(n-1) 至 (n-1) 的絕對值
且取補數,得座標值如下:
(0,0)
(1,0)
(2,0)
(1,0)
(0,0)
(0,1)
(1,1)
(2,1)
(1,1)
(0,1)
(0,2)
(1,2)
(2,2)
(1,2)
(0,2)
(0,1)
(1,1)
(2,1)
(1,1)
(0,1)
(0,0)
(1,0)
(2,0)
(1,0)
(0,0)
1
1
1
1
1
1
2
2
2
1
1
2
3
2
1
1
2
2
2
1
1
1
1
1
1

x>y 時,輸出 y+1,否則輸出 x+1
程式碼如下:
int i,j,x,y,n=4;
for(i=-(n-1);i<=(n-1);i++){
     y=n-abs(i)-1;
     for(j=-(n-1);j<=(n-1);j++){
          x=n-abs(j)-1;
          if(x>y){
               printf("%d",y+1);
          }
          else{
               printf("%d",x+1);
          }
     }
     printf("\n");
}


修改輸出碼,將 1234 轉成 abcd
int i,j,x,y,n=4;
for(i=-(n-1);i<=(n-1);i++){
     y=n-abs(i)-1;
     for(j=-(n-1);j<=(n-1);j++){
          x=n-abs(j)-1;
          if(x>y){
               printf("%c",y+"a");
          }
          else{
               printf("%c",x+"a");
          }
     }
     printf("\n");
}