2016-10-04 45 views
-6

環路I需要此代碼到輸出升空!打印到0與在C++

我有一種感覺,我在for循環中將我與userNum相關聯時出錯。有什麼建議麼?

#include <iostream> 
using namespace std; 

int main() { 
    int userNum = 0; 
    int i = 0; 

    userNum = 3; 

     for(i = 1; i <= userNum; i--) { 
     cout << i << endl; 
     cout << "Blastoff!" << endl; 
    } 

    return 0; 
} 
+1

也許該學習如何使用調試器 –

+0

不應該從userNum開始到0嗎? –

+0

將blastoff移至循環後 –

回答

0

我解決您的代碼,請嘗試

#include <iostream> 
using namespace std; 

int main() { 
    int userNum = 0; 
    int i = 0; 

     for(i = 3; i > userNum; i--) { 
     cout << i << endl; 
    } 

    cout << "Blastoff!" << endl; 

    return 0; 
} 
+1

你的代碼是錯的,它循環4次 –

+0

請整理格式 –

+0

哎呀,我以爲他需要0哈哈,非常感謝修正:) – MjdeLima

0

考慮自己做功課。 :)

#include <iostream> 
using namespace std; 

int main() { 
    int i = 0; 
    int userNum = 3; 
    for(i = userNum; i > 0; i--) { 
    cout << i << " "; 
    } 
    cout << "Blastoff!" << endl; 
    return 0; 
} 
0

這裏最主要的是瞭解for循環中的終止條件。 這裏你應該看到它比較3> 0,2> 0,1> 0和0> 0(計算結果爲False),因此只進入循環3次。您的userNum變量對我來說毫無意義,因爲您甚至沒有從用戶那裏獲得輸入。所以我只是把任意的硬編碼值放在循環中。

#include <iostream> 
using namespace std; 

int main() 
{ 

    int userNum = 0; 
    for(int i = 3; i >userNum; --i) 
    { 
     cout << i << " "; 
    } 

    cout << "Blast Off!" << endl; 

    return 0; 
}