#include <stdio.h>
#include <string.h>
int main(void){
int i=1;
if(i!=1||i!=2||i!=3||i!=4){
fprintf(stderr,"匹配错误\n");
}else{
fprintf(stderr,"匹配正确\n");
}
}
if( i != 1 || i != 2 || i != 3 || i != 4)
因为i的初值为1,虽然i != 1为false,但后面的i != 2为ture,这个||运算后整个表达式的值就为true啊追问
因为i的初值为1,虽然i != 1为false,但后面的i != 2为ture,这个||运算后整个表达式的值就为true啊追问
哦,逻辑或判断是只要有一个表达式为true那就判断为true吗?
温馨提示:答案为网友推荐,仅供参考
第1个回答 2017-03-07
因为i的值是1,所以i!=2为真,i!=3也为真,i!=4还是真
逻辑或||只要有一个表达式的结果为真,则整个表达式的结果为真
所以if语句的条件为真!!!
逻辑或||只要有一个表达式的结果为真,则整个表达式的结果为真
所以if语句的条件为真!!!
第2个回答 2017-03-07
“||” 是或者(OR)的意思 ,满足这些条件其中之一,就是true;
i=1;1满足 1!=2,所以就是true了啊。
假如想写 与(AND) 请用 “&&” 代替 “||”
i=1;1满足 1!=2,所以就是true了啊。
假如想写 与(AND) 请用 “&&” 代替 “||”