0

编写具有多个 || 的 if 语句的简洁方法是什么?和 && 在 C 中?

如果 a 1、2、4 或 6 AND b = 8 和 c = 10,我只想执行 printf 语句,我可以将所有这些条件放入同一个 if 语句中吗?

例如。我可以写类似的东西:

if ((a = 1||2||4||6) && b == 8 && c == 10)

//do something

这似乎不起作用...

4

2 回答 2

9
if ((a == 1 || a == 2 || a == 4 || a == 6) && b == 8 && c == 10)
于 2014-05-18T08:20:04.053 回答
3

最好用一个switch语句来写这个,if而不是。

if(b == 8 && c == 10) {
    switch(a) {
        case 1:
        case 2:
        case 4:
        case 6:
            printf("value works\n");
    }
}
于 2014-05-18T08:20:33.457 回答