C ++永远循环

时间:2018-03-21 20:53:52

标签: c++ loops input

我将以下循环编写为我的CS作业程序的一部分,但无论输入如何,程序都会保持循环到这一点。我做错了什么?

#include <iostream>
using namespace std;

char choice;
do
{
  cout << "Type 'c' for characters or type 'n' for numbers: ";
  cin >> choice;
}while (choice != 'c' || choice != 'n');

1 个答案:

答案 0 :(得分:3)

只要do表达式为while,就会循环while - true语句。

您的while表达式

choice != 'c' || choice != 'n'

在普通英语中,该表达意味着

  

choice不是'c' choice不是'n'

逻辑上,该声明始终为真choice 始终不是其中之一。

在英语和C ++中,您可能希望在该表达式中使用and / &&