2016-09-21 210 views
1

我有一個稱爲zero_row的函數。該函數將零值插入指定的所有行中。該函數用於變量。 a(數組)和row(數組中的行)。這裏是我的功能使用for循環更改二維數組中行的值

void zero_row (int a [4][5], int row){ 
    for (int i = 0; i < 4; i++) { 
     a[i][j] = 0; 
    } 
} 

我知道如何將整個數組的值設置爲零。因爲我有一個功能來做到這一點。

void zero_all (int a [4][5]) { 
    for (int i = 0; i < 4; i++) { 
     for (int j = 0; j < 5; j++) { 
      my_arr[i][j] = 0; 
     } 
    } 
} 

我似乎無法弄清楚如何使用變量row來做到這一點。我想使用這個變量,所以我可以稍後改變主函數中的行,如下所示:zero_row(a, 3);。誰能幫忙?

謝謝!

回答

1

在你的情況下,第一個索引對應一行,第二個索引對應一列。

使用

void zero_row (int a [4][5], int row){ 
    for (int j = 0; j < 5; j++) { // 5 instead of 4 
     a[row][j] = 0; 
    } 
}