#include <iostream>
using namespace std;
int main(){
char i;
cin >>i;
switch (i){
case ('e'||'i'||'o'||'u'||'a'):
cout<<"Vowel";
break;
case ('+'||'-'||'/'||'*'||'%'):
cout<<"Op";
break;
}
return 0;
}
如果不是,我们如何在 switch 中使用比较或逻辑运算符? &为什么我们不能在不使用范围的情况下在单个情况下声明和初始化变量?
最佳答案
如果没有 break 语句,前面的情况就会“失败”,所以这会实现您正在寻找的 ||
:
#include <iostream>
using namespace std;
int main(){
char i;
cin >>i;
switch (i){
case 'e':
case 'i':
case 'o':
case 'u':
case 'a':
cout<<"Vowel";
break;
case '+':
case '-':
case '/':
case '*':
case '%':
cout<<"Op";
break;
}
return 0;
}
问题另一部分的答案 is discussed in depth already on stackoverflow .
关于c++ - 我们可以用 C++ 开关写这个吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4705400/