【发布时间】:2014-10-28 13:59:25
【问题描述】:
请注意,在用户输入之前,choiceOne_One 等于 0。
我当前的代码有问题。我希望用户能够重新输入他们的输入直到它有效,而不必关闭程序并重新打开它。因此(以及来自互联网上其他人的建议),我添加了一个 while 循环,这看起来很可靠。
出于某种原因,当用户输入 1 时,它会循环执行第一个 if 语句,就好像输入无效一样,输出“哇!这不是一个选项……等等”。我不确定如何进行这项工作,甚至不知道它有什么问题。任何帮助将不胜感激。
cin >> choiceOne_One;
int whileInt=0;
while(whileInt == 0)
{
if (choiceOne_One != 1 || 2)
{
cout << "Woah! That wasn't an option! Try Again.\n";
}
else if (choiceOne_One == 1)
{
whileInt++;
cout << "One\n";
}
else if (choiceOne_One == 2)
{
whileInt++;
cout << "Two\n";
}
}
【问题讨论】:
-
好的,所以它总是进入
if正文。所以拿出条件并玩弄它。
标签: c++ if-statement user-controls while-loop revert