[英]Assigning a 2D array (of pointers) to a variable in an object for access in C++?
[英]What is wrong with my for loop for determining mid-max in a 2D array? C++ Not assigning new value to the variable
for (i = 0, i < NUM_ROWS; i++;){
for (j = 0, j < NUM_COLS; j++;){
if (milesTracker[i][j] > maxMiles)
maxMiles = milesTracker[i][j];
if (milesTracker[i][j] < minMiles)
minMiles = milesTracker[i][j];
}
}
maxMiles 和 midMiles 在嵌套循環之前都給定/初始化為 0。 當我運行它時(cout << minMiles),無論輸入如何,它都只返回一個零。
我的邏輯在哪里有缺陷? 它應該是 go:
目前必須在 CompSci 2 中為 CompSci 1 支付我的罪過,所以我只是想回顧一下我從未學到的東西......
您的 for 循環聲明有錯誤。 一個for
循環需要
for (index; range; increment)
以及用分號分隔的那些段。 現在您在索引子句中有一個逗號運算符,這意味着索引和范圍檢查i = 0, i < NUM_ROWS
和j = 0, j < NUM_COLS
出現在第一段中,因此<
檢查實際上被忽略了( 逗號運算符如何工作? )。 所以i++
和j++
現在是在范圍檢查中,並且這些總是會導致0
因為i
和j
分別從0
開始。
您應該將 for 循環更改為如下所示:
for (i = 0; i < NUM_ROWS; i++){
for (j = 0; j < NUM_COLS; j++){
//...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.