C语言问题!x=1,y=1,z=0,x&&!y||z的值是多少?

如题所述

0,或者为假,false。&&是逻辑与,仅当两边表达式都为真(1)时为真(1),||是逻辑或,仅当两边表达式都为假(0)时为假(0),且与优先级高于或。题中x为1,!y为0,z为0,1&&0||0值为0。
温馨提示:内容为网友见解,仅供参考
第1个回答  2017-01-26
我觉得 0吧

C语言问题!x=1,y=1,z=0,x&&!y||z的值是多少?
0,或者为假,false。&&是逻辑与,仅当两边表达式都为真(1)时为真(1),||是逻辑或,仅当两边表达式都为假(0)时为假(0),且与优先级高于或。题中x为1,!y为0,z为0,1&&0||0值为0。

c语言x=1;y=1;z=0;x=x||y&&z;为什么x等于1
因为&&的优先级比||高一级,所以x=x||y&&z;这个语句的等号右边等效为x || (y && z);。执行时由于x=1,再碰到||就不执行了,因为无论||右边的结果是什么,都不影响整个表达式为1的结果了——一个“真值“或任何逻辑值都是”真值“,所以结果为1。

c语言x=1;y=1;z=0;x=x||y&&z;为什么x等于0
你运行过吗?x不等于0,x等于1。

C语言 求解答
x=1,y=1,z=1;if((x=2)&&(y=2)&&(z=2))首先,x=2是赋值,执行后x==2,并且此等式的值为2,所以if (x=2)的结果是true。其次,按照if的判断规则,遇到a&&b&&c这样的判断,当a为true后,会进行b的判断,如果b也为true,就继续进行c的判断。所以这一行会依次进行x=2,y=2,z=2...

在C语言中x=1,y=2,z=3,x=x||y&&z;谁给我解释一下为什么x值为1
x=x||y&&z为赋值语句,将表达式x||y&&z的值赋值给x;右边表达式先运算&&,后运算||,又因为x的初始值为1,1或上任何值,结果都为1,后面的与操作无论是什么结果都不影响整个表达式的值;因此,最终x的值既是1!

C语言问题,int x=1,y=1,z=1; --x&&(--y||--z) xyz的值是多少?
x=0 y=1 z=1 原因是:--x && (--y || --z) 中,&& 是逻辑与运算符。程序运行时会先判断 && 左边的部分,如果左边部分为真,再判断右边部分。左边的部分是 --x ,也就是让 x 先自减 1,即 x 为 0 ,逻辑运算时 0 被当作 "假" 来处理。逻辑与运算时有一项为假,结果必为假...

逻辑与(&&)的功能:若参加运算的两个表达式值均为非0,则结果为0;否则结 ...
(x=1)&&(y=1)首先需要说明的是这里的‘=’号不是逻辑判断而是赋值(c语言里逻辑判断是'=='),所以这一句的意思是 x=1;y=1;z=1 x&&y||z 也就是 1&&1||1 值为1 --- 你理解的应该是这样表达 (x==1)&&(y==1)||(z==1)

int x=1 y=2 z;执行z=X>Y||X&&Y求z的值 求详解
1大于 “>”;2相与 “&&”;3相或“||”,4等于“=”。故z=x>y||x&&y 等价于 z=(x>y)|| (x&&y);因为X小于Y,及前一部分为0;又因为X、Y都大于0(C语言看做为真),故后一部分为真,再两部分相或(有一部分为真就为真),故结果为真(默认的值就是1),故最后结果是Z=1;...

c语言的问题,求助解答。
1. (z>=y>=x)? 1:0 z>=y就是对的,所以为1 ,然后1>=x不对,所以为0,所以整个表达式为0 2. z>=y&&y>=x z>=y对为1 ,y>=x对为1,1&&1,所以答案为1,A

设x=1,y=2,z=3,则表达式 !y&&(x=z) 的值为___。
这个解答是这样的,首先 牵扯到运算的先后顺序,!是C语言中的非运算,最先运算,然后对Y取非便是0,&&是逻辑与运算,后面的不看,便知道答案是0了。如果计算的话 X=Z 也是0,所以取与之后的答案为0.

相似回答