C语言问题:为什么输出结果是0

#include<stdio.h>
int main ()
{int x=0.5;char z='a';
printf("%d\n",(x&&1)&&(z<'z'));
}

int x=0.5,x的值是向下取整的0
0&&1得0,0&&任何数得0,不再计算后项表达式的值,称为&&的短路运算。
因此表达式(x&&1)&&(z<'z')的值是0。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-06-03
当然是0
int x=0
相似回答