gpt4 book ai didi

C++ While循环多选条件

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

我正在构建一个简单的计算器,如果用户没有选择正确的运算符,我会尝试做一个 while 循环,所以如果他们没有选择 +,我需要让他们陷入循环>、-*/%。我知道如果我只是为每个符号放置 !=,即使使用 || 也不满足第一个条件,它会继续运行。

这是我的代码一些帮助将不胜感激。

#include "stdafx.h"
#include <iostream>

using namespace std;

int main()
{
int a;
int b;
int c;
char symbol;

cout << "Please choose a number\n" << endl;
cin >> a;

cout << "\nPlease choose another number\n" << endl;
cin >> b;

cout << "\nPlease choose a operator: +, -, *, /, %,\n";
cin >> symbol;

while (symbol != '+', '-', '*', '/', '%')
{
cout << "\nPlease choose a VALID operator: +, -, *, /, %,\n";
cin >> symbol;
}

最佳答案

首先,如您所述,最简单的方法可能是分别检查每个运算符。但是,请注意,您需要的是 and (&&) 运算符,而不是 or (||) 运算符:

while (symbol != '+' && 
symbol != '-' &&
symbol != '*' &&
symbol != '/' &&
symbol != '%') {
// code...

或者,string::find可能更方便:

std::string OPERATORS = "+-*/%";
while (OPERATORS.find(symbol) != std::string::npos) {
// code...

关于C++ While循环多选条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30059109/

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