2011-03-02 64 views
1
for (row=0; row<8; row++) 
    { 
     for (col=0; col<8; col++) 
     { 
      answer+=my_data[row][col]; 
     } 
     printf("The sum of row %i is: %i\n", row,answer); 
     answer = 0;//to reset answer back to zero for next row sum 
    } 

我有一個8x8數組,我添加每一行並將答案重置爲零,以便您得到每一行的確切答案。然而,它不工作...什麼是錯的?添加2維陣列行

+2

您是否在循環開始之前將回答設置爲0? – 2011-03-02 06:20:39

+0

如何改變'答案= 0;'到bucle的開始? – PedroC88 2011-03-02 06:21:18

+0

當你說不工作,什麼不工作?編譯錯誤?奇怪的價值出來了嗎?等等也是如何回答,行,列聲明? – 2011-03-02 06:21:34

回答

4

answer如何申報?

如果沒有初始值的聲明則現有的代碼也將失敗answer將有第一排垃圾值。爲了解決這個問題:

for (row=0; row<8; row++) { 
     answer = 0; // clear the running sum. 
     for (col=0; col<8; col++) { 
      answer+=my_data[row][col]; 
     } 
     printf("The sum of row %i is: %i\n", row,answer);  
} 
+0

這是問題哈哈謝謝。 :) – Kyle 2011-03-02 06:28:18

0

忘記在程序的開頭初始化答案爲零。

int answer = 0; 

感謝槍手和佩德羅。