gpt4 book ai didi

c++ - 在 while 循环中接受用户输入

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:30:08 26 4
gpt4 key购买 nike

我正在尝试创建一个简单的温度转换程序,允许用户根据需要多次转换温度,直到他们决定通过输入字母“e”来结束程序。除了用户输入字母“e”的部分外,代码中的其他所有内容均有效。如果我取出最后一个 else 语句,程序将再次从循环的开头开始。如果我把else语句留在里面,当用户输入字母'e'时,else语句认为这是无效输入,不会结束程序。

 #include <iostream>

using namespace std;

float celsiusConversion(float cel){ // Calculate celsius conversion
float f;

f = cel * 9/5 + 32;
return f;
}

float fahrenheitConversion(float fah){ // Calculate fahrenheit conversion
float c;

c = (fah - 32) * 5/9;
return c;

}
int main()
{
char userInput;

while (userInput != 'e' or userInput != 'E') // Loop until user enters the letter e
{

cout << "Please press c to convert from Celsius or f to convert from Fahrenheit. Press e to end program." << endl;
cin >> userInput;


if (userInput == 'c' or userInput == 'C') // Preform celsius calculation based on user input
{
float cel;
cout << "Please enter the Celsius temperature" << endl;
cin >> cel;
cout << cel << " Celsius is " << celsiusConversion(cel) << " fahrenheit" << endl;
}
else if (userInput == 'f' or userInput == 'F') // Preform fahrenheit calculation based on user input
{
float fah;
cout << "Please enter the Fahrenheit temperature" << endl;
cin >> fah;
cout << fah << " Fahrenheit is " << fahrenheitConversion(fah) << " celsius" << endl;
}
else // If user input is neither c or f or e, end program
{
cout << "Invalid entry. Please press c to convert from Celsius, f to convert from Fahrenheit, or e to end program." << endl;
}
}
return 0;
}

最佳答案

你是说 while(userInput != 'e' && userInput != 'E')

“或”版本始终为真

关于c++ - 在 while 循环中接受用户输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13348800/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com