IF后面加了 ; 号表示他是一条语句了。他就不在是判断语句了,不管他里面的结果是真是假,他的下一条语名都会执行。最后输出的结果会因为 IF 表达式里面的赋值的关系运算改变的。
x=1;y=1;z=1;
if((x=2)&&(y=2)&&(z=2));
printf("%d,%d,%d\n",x,y,z);
这个结果我想能看懂的吧!因为他的运算结果为真,三个都能赋到值。
x=1;y=1;z=1;
if ((x=0)&&(y=2)&&(z=2));
printf("%d,%d,%d\n",x,y,z);
这个是与关系,与关系中有一个为假就为假。计算机在检测X=0时就为假了,所以后面的两个就不会运算了。
x=1;y=1;z=1;
if ((x=2)||(y=2)||(z=2));
printf("%d,%d,%d\n",x,y,z);
这个是或关系,或关系中一个为真就为真。检测第一个X=2时就为真了,所以后面的也不会运算了。
x=1;y=1;z=1;
if ((x=0)||(y=2)||(z=2));
printf("%d,%d,%d\n",x,y,z);
这个也是或关系,检测到第一个为假时,他会继续检测第两个,当第二个为真时他就结束了。
x=1;y=1;z=1;
if ((x=0)&&(y=2)||(z=2));
printf("%d,%d,%d\n",x,y,z);
这是一个与和或的综合运算关系,与的优先级比或的优先级要高,前面两个进行与运算,第一个是假,所以第二个他不会运算得到与运算为假,他再和第三个进行或运算, 和上面一样的道理,第三个为进行赋值。
不知道这个样能不能让你看懂,可能没能表达清楚意思,总之,这要理解透与和或关系的运算就好明白了。
x=1;y=1;z=1;
if((x=2)&&(y=2)&&(z=2));
printf("%d,%d,%d\n",x,y,z);
这个结果我想能看懂的吧!因为他的运算结果为真,三个都能赋到值。
x=1;y=1;z=1;
if ((x=0)&&(y=2)&&(z=2));
printf("%d,%d,%d\n",x,y,z);
这个是与关系,与关系中有一个为假就为假。计算机在检测X=0时就为假了,所以后面的两个就不会运算了。
x=1;y=1;z=1;
if ((x=2)||(y=2)||(z=2));
printf("%d,%d,%d\n",x,y,z);
这个是或关系,或关系中一个为真就为真。检测第一个X=2时就为真了,所以后面的也不会运算了。
x=1;y=1;z=1;
if ((x=0)||(y=2)||(z=2));
printf("%d,%d,%d\n",x,y,z);
这个也是或关系,检测到第一个为假时,他会继续检测第两个,当第二个为真时他就结束了。
x=1;y=1;z=1;
if ((x=0)&&(y=2)||(z=2));
printf("%d,%d,%d\n",x,y,z);
这是一个与和或的综合运算关系,与的优先级比或的优先级要高,前面两个进行与运算,第一个是假,所以第二个他不会运算得到与运算为假,他再和第三个进行或运算, 和上面一样的道理,第三个为进行赋值。
不知道这个样能不能让你看懂,可能没能表达清楚意思,总之,这要理解透与和或关系的运算就好明白了。