2012-10-18 170 views
1

我想填充二維數組,這就是我所做的。然而,它會給編譯錯誤,如警告:價值計算不使用,我不明白爲什麼。如果有人能告訴我這個問題並解釋可以做什麼,我將不勝感激。謝謝!二維數組填充

#include <stdio.h> 
    #include <string.h> 

    int main() 
    { 
     int array1[4][4]; 
     int len = sizeof(array1)/sizeof(array1[0]); 
     int wid = sizeof(array1[0])/sizeof(array1[0][0]); 

     int i, j , z = 0; 
     //compile error 
     for(i = 0, i < len; i++) 
     { 
      for(j = 0, j < wid; j++) 
      { 
       array1[i][j] = z; 
      } 
      z++;  
     } 

     int a, b; 
     for(a = 0, a < len; a++) 
     { 
      for(b = 0, b < wid; b++) 
      { 
       printf("%d", array1[a][b]); 
      } 
     } 
      return 0; 
     } 
+0

該警告在哪一行? –

回答

2

您已在每個for語句的初始化部分後面加逗號。你應該放一個分號。例如,你寫了這個:

 for(i = 0, i < len; i++) 

你需要把它改成這樣:

 for(i = 0; i < len; i++) 

此外,你可能會想打印陣列元件之間的空間,並且每行後換行:

 for(a = 0; a < len; a++) { 
     for(b = 0; b < wid; b++) { 
      printf("%d ", array1[a][b]); 
     } 
     printf("\n"); 
    }