簡體   English   中英

While循環和cin

[英]While loop and cin

下面的代碼應詢問用戶自己的體重,如果用戶輸入> 15,則應執行while循環以將其增加到50。該代碼可成功編譯,但是無論您輸入> 15,它均不執行while循環。

#include <iostream>
using namespace std;

int main()
{


int weight;

cout << "Current weight?" << endl;
cin >> weight;
cout << "Your weight:" << weight << endl;
if (weight > 15) {
        while (weight == 50) {
            weight = weight + 1;
            cout << "Weight:" << weight << endl;
        }
}
return 0;
}
while(weight==50){
    weight = weight +1;
    cout <<"Weight:"<<weight<<endl;
}

只要weight等於50 ,上面的循環就會繼續下去,根據您在問題中所寫的內容判斷,這並不是您要的內容。

要解決該問題,請將循環條件更改為更合適的條件 只要weight 小於 50您是否要一直循環播放?

只要給定條件為真,C / C ++編程語言中的while循環語句就會重復執行目標語句。

如果您輸入的重量值不是50,則weight == 50條件將失敗。 要執行您提到的操作,請在while循環中修改條件。

weight == 50

weight < 50

如果使用調試器逐步運行此程序,並添加了變量值監視功能,那么您會發現發生了什么。

您的開發環境(用於編寫代碼的環境)可能具有集成的調試器。 或者,使用另一個開發人員。 env。的調試器,或獨立的調試器,例如用於命令行的gdb,用於KDE的kdbg,用於任何X環境的ddd等(這些都在Linux上;其他平台可能具有其他調試器)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM