2017-02-01 44 views
0

我想創建釘跳拼圖,我正在做格式說明符,我意識到算法還沒有完成,但有人可以解釋爲什麼我的情況被忽略?它正在運行格式規範,即使列不止一個。例如,在peg jump益智遊戲中的第一個行之後的每個行的每個'+'在每列的'+'之前都有7個空格,當我只希望第一列具有格式指定,然後每一行具有降序空格。釘拼圖格式輸出

#include <stdio.h> 

int main(){ 

    //variables for pieceboard 

    char p1, p2, p3, p4, p5, p6, p7, p8, p9; 
    int row = 1; 
    int column = 1; 

    p1 = 'o'; 
    p2 = p3 = p4 = p5 = p6 = p7 = p8 = p9 = '+'; 

    for (row =1 ; row <= 5; row++){ 
     for (column = 1; column <= row; column++) { 
      if (row == 1) { 
       printf("%+8c", p1); 
      } 
      else if(row > 1 && column == row) 
       printf("%+7c", p2); 

     printf("\n"); 
} 
    system("PAUSE"); 
    return 0; 
} 
+0

你有沒有遇到過陣列呢?使用'p1' ..'p9'強烈暗示陣列。事實上你並沒有真正使用'p3'''p9'提示麻煩來了。 –

+0

謝謝,但我們不能使用這個項目的數組:(:( –

回答

1

你的花括號看起來很奇怪。我通常在單行else語句中包含大括號,以使代碼更清晰。

嘗試圍繞你的else if()代碼塊加上{}大括號並重新編譯。看看是否有幫助。

實際上,它看起來像缺少一個for循環的結束大括號。