带或在C中的If语句

带或在C中的If语句,c,C,我试图创建一个if语句,如果用户没有输入1或2的值,它将创建一条错误消息。我想它看起来像 if (type != 1 or 2) { printf ("Enter numbers 1 or 2"); } 我知道if语句的1和2之间的or部分不起作用,但是什么会起作用呢?谢谢 顺便说一句:这是用C写的。即使你口头上把它表示为“不是1或2”,但在编程上你会使用和,因为只有当两个值都不匹配时,你才会显示错误提示 if (type != 1 && type != 2){

我试图创建一个if语句,如果用户没有输入1或2的值,它将创建一条错误消息。我想它看起来像

if (type != 1 or 2) {
    printf ("Enter numbers 1 or 2");
}
我知道if语句的1和2之间的or部分不起作用,但是什么会起作用呢?谢谢


顺便说一句:这是用C写的。

即使你口头上把它表示为“不是1或2”,但在编程上你会使用
,因为只有当两个值都不匹配时,你才会显示错误提示

if (type != 1 && type != 2){
    printf ("Enter numbers 1 or 2");
}
使用
会导致问题。如果输入了
2
,则第一条语句为true,将触发If语句结果


注意:我没有考虑
类型
变量是什么数据类型。

本网站希望您发布代码,而不是一些未经测试的猜测。顺便说一句:每个可能的值都需要单独检查。这样的语句:
if(1!=type&&2!=type)
假设该类型是数字。如果type是一个char,那么
if('1'!=type&&'2'!=type)
注意:'type'是一个不确定的变量名,建议使用更类似于所解决问题的上下文的名称。例如,如果问题是关于汽车的,那么名称可能是:“carType”