#include <iostream>
using namespace std;
int main(){
int x,y,z;
int a,b,c;
cout<<"Enter Values of first set: ";
cin>>x;
cin>>y;
cin>>z;
cout<<"Enter Values of first set: ";
cin>>a;
cin>>b;
cin>>c;
if(x!=a || y!=b || z!=c)
{
//some statements
}
else
{
}
}
当我运行此代码是转移控制到其他但我不知道哪一个或两个条件变得虚假或可能都变得虚假
我想知道,如果条件为TRUE且哪个为FALSE但只有单个if,我不想做多个if和else.Thanks
答案 0 :(得分:3)
如果构造为每个条件设置一个状态,你可以做的是一些非常讨厌:
int s = 0; // state
if(x!=a && s=1 || y!=b && s=2 || z!=c && s=3)
所以int s
将是第一个条件的状态是真的..但我不会这样做:)如果可能的话只使用多个if
如果你想知道其中多个条件是否为真,你也可以在if中使用位逻辑,如果你真的需要我可以扩展这个答案。