2016-03-10 42 views
-2

我寫了一個程序中的陣列,以接受15的整數值,那麼此數組傳遞到將被4.程序被稱爲

目前程序乘以每個偶數索引值的函數顯示初始數組,但似乎在顯示修改後的數組之前會掛起。

請幫我理解爲什麼程序會卡在這裏!

int main(){ 
    const int SIZE = 15; 
    int quad[SIZE] = {}; 
    void quadruple(int[], const int); 

    cout << "Enter 15 integer values into an array." << endl; 
    for (int i = 0; i < SIZE; i++)        // Accept 15 int values 
    { 
     cout << i << ": "; 
     cin >> quad[i]; 
    } 

    cout << "Before quadruple function is called: " << endl; 
    for (int i = 0; i < SIZE; i++) 
    { 
     cout << quad[i] << " "; 
    } 
    cout << endl; 

    quadruple(quad, SIZE); 
    cout << "After even index value multiplication: " << endl; 
    for (int i = 0; i < SIZE; i++) 
    { 
     cout << quad[i] << " "; 
    } 
    cout << endl; 

    return 0; 
} 

void quadruple(int values[], const int SZ){ 
    for (int i = 0; i < SZ; i + 2)    // Multiply even values by 4 
    { 
     if ((i % 2) == 0) 
     { 
      values[i] = values[i] * 4; 
     } 
     else          // Keep odd values the same 
     { 
      values[i] = values[i] * 1; 
     } 
    } 
} 
+1

'i + 2'橡皮鴨會說什麼? –

+0

有人會問你使用調試器並進行橡皮鴨調試。爲什麼不是我。 –

回答

3
for (int i = 0; i < SZ; i + 2)  

「我+ 2」 沒有做任何事情。

你可能意思是「i + = 2;」。

你的家庭作業是找到一些關於你的系統調試器的文檔。並找到你的橡皮鴨在哪裏,正如評論中提到的那樣。

+0

謝謝先生,我會向我的橡皮鴨解釋每一行。 – AddieCaddy

相關問題