如何用多个||编写if语句和&&在C?

时间:2014-05-18 08:17:39

标签: c if-statement multiple-conditions

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

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

例如。我可以这样写:

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

//do something

这似乎不起作用......

2 个答案:

答案 0 :(得分:7)

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

答案 1 :(得分:2)

最好用switch内的if语句来写这个。

if(b == 8 && c == 10) {
    switch(a) {
        case 1:
        case 2:
        case 4:
        case 6:
            printf("value works\n");
    }
}