2014-02-26 68 views
-1
#include <iostream> 
int main() 
{ 
    std::cout << " Enter the small number " << std::endl; 
    int v1 = 0; 
    std::cin >> v1; 

    std::cout << " Enter the large number " << std::endl; 
    int v2 = 0; 
    std::cin >> v2; 

    int x = 0; 
    while (x <= v2-1) { 
    x = v1+1; 
    ++x; 
    } 

    std::cout << x << std::endl; 
    return 0; 
} 

此代碼不給出任何錯誤,但輸入兩個數字後我無法獲得任何輸出。但是,它適用於這樣的for循環;在兩個隨機整數指定的範圍內打印每個數字

{ 
    for (int x = v1+1; x <= v2-1; ++x) 
    std::cout << x << std::endl; 
    return 0; 
} 

什麼是我應該避免使用while循環的錯誤?

+0

要初始化'x'每次。 –

回答

2
int x = 0; 
while (x <= v2-1) { 
    x = v1+1; 
    ++x;} 

你在這裏得到一個無限循環,x的值始終是v1 + 1或v1 + 2。

使用本:

int x = v1+1; 
while (x++ <= v2-1) { 
cout<<x; 
} 
+0

謝謝。它按照預期的方式工作。 – user3356348

相關問題