我正在尝试将数组的数量更改 2 次,并且在 [5][4] 数组中仅更改 2 次。
所以说我只想将= 0的前2个元素更改为= 1,然后退出循环。所以元素[0] = 1,[1] = 1,然后[2] = 0,[3] = 0。然后我想将更改元素[2]和[3]添加到1,但留下元素[0]并且 [1] = 1。(这只是一维数组的示例)。
这仅适用于 5 行和 2 列,但我怎样才能在循环中执行此操作?例如,如果我有一个 [30][6] 数组,显然这不会有效。我试过用 for 循环来解决这个问题,但我就是想不出一个可行的方法。
int numPassengers = 2;
int count = 0;
while (count < numPassengers){
if(array[0][1] == 0){
array[0][1] = 1;
count++;
}
else if(array[1][1] == 0){
array[1][1] = 1;
count++;
}
else if(array[2][1] == 0){
array[2][1] = 1;
count++;
}
else if(array[3][1] == 0){
array[3][1] = 1;
count++;
}
else if(array[4][1] == 0){
array[4][1] = 1;
count++;
}
}
稍微改了一下代码。
for(int i = 0; i < ROW; i++){
for(int j = 1; j <= 2 ; j++){
if( array[i][j] == 0){
if(count < numPassengers){
array[i][j]++;
count++;
}
}
}
}