55问答网
所有问题
当前搜索:
z=x++,y++,++y
当
x=y=z=
0时,c语言中
++x
||
++y
&&
++z
; x
,y,
z的值是多少
答:
只有x的值增加了1,其余值没有变 原因是,由运算符优先级可知原表达式等效于
++x
|| (
++y
&&
++z
)然后又由于||运算符的短路效应,显然子表达式++x的值为非零,所以||右侧的表达式没有必要在去执行 故而只有x自增了1,其余值没有改变
...x=1,
z=
1
,y
=1,k;则计算表达式k
=x++
||
++y
&&
++z
后,变量k,x
答:
变量k,x
,y,
z的值分别为 1,2,1,1 正确。原因:k
=x++
||
++y
&&
++z
; 是赋给 k 逻辑值。 逻辑 式 是 或运算 , 有规定,若 或运算 中 第一项为真,则结果为真,就不做 第二项运算。 所以 式子简化为: k=x=真=1; x=x+1=2;y,z 未参加实际运算,保留初始值 1,1。
...
z=
2,求下列表达式的值 (1)x<
y
?y:z ( 2) x>y?(
++x
):(
++z
)
答:
这个表达式的运算符为 a?b:c,即根据逻辑表达式a的真假情况返回表达式b或c.若a为真(即a运算结果非0),则返回表达式c;若为0,则返回表达式c.因此x>
y++x
:
++y
的意思是判断x>y的真假,若为真,则返回表达式++x,若为假,则返回++y.2).执行z+= 【执行过程】表达式z+
=x
>y?++x:++y等价于
z=
z+(...
C语言,计算机软件基础问题?
答:
因为语句1是0,语句2不管是1还是0,结果都是0 0||1和0||0执行语句1和语句2 1||0和1||1只执行语句1(特性,都是特性)因为语句1是1,语句2不管是1还是0,结果都是1 此题还有一点!
++y
先将y+=1;再使用y
y++
先使用y,再将y+=1;课余答题:int a=0;a+=!(a++&&++a);cout<...
...X=1
,y
=2,
z=
3; x+=y+=z; printf("%d",(x<y?
X++
;
y++
)) } 输出结果是...
答:
嗯,可以先看看要求输出什么 printf("%d",(x<y?X++;
y++
)) } 这是一个条件表达式,判断x<y的真假,真就取
x++,
假就取y++ x=1
,y
=2,
z=
3 x+=y+=z 是自右运算的
,y=
y+z=5 此时y=5 x+=y x
=x
+y=1+5=6 然后判断x<y 很明显x>y 所以条件是假值,取y++ 这里注意一下,...
若有定义:int c=0,x=1
,y
=1,c
=x++
||
y++
;执行上述操作后x,y和c的值分 ...
答:
int c=0,x=1
,y
=1;c
=x++
||y++;//对于像我们这样的初学者,这里x++和
++x
说一下哈。x++是先赋值再执行++操作,而++x是先++操作再赋值。这里的赋值就是个x自己啦,x=2;//再个说一下运算符的优先级问题,这里++最高,||其次,=最低,也就是说先要执行x++||
y++,
最后执行的结果给c...
当
x=y=z=
0时,c语言中
++x
||
++y
&&
++z
; x
,y,
z的值是多少
答:
在计算的时候还是从左到右扫描的。先计算
++x
, x先自加为1。于是等效于 1||(
++y
&&
++z
)三、 根据短路运算,当||左值为1时,右值是1还是0已经不影响最终结果了。所以右值不参运算 于是右侧的++y&&++z不会被执行。 y和z还是原始值0.四、 综上, 执行后x=1
, y
=0,
z=
0.五、 编写如下...
C语言一句:
z=
-
X
---
Y,
怎么理解?
答:
就近结合原则,所以等价于
z =
-(x--)-y;有!你看见几个一样的操作符,就用就近结合原则。如:
x+++y
;就是(
x++
)+y;但是,以下是非法的:
x+++++y
;虽然很显然就是(x++)+(++y);但是编译器会说这是“迷失在操作符空间”,呵呵,很幽默的一个报错。
C语言的--
x
&&
++y
||
++z
要怎么理解
答:
?二、&& 和 || 有断路特性 && 当遇到 0时,不再运行其后的同级运算 || 当遇到 1时,不再运行其后的同级运算 如:int x=1
, y
=2 ;--x&&
++y
; 这句执行完成后,x=0
, y
依然是2 如:int y=0,
z=
2;++y||
++z
; 这句执行完成后
,y
=1 z依然是2 ...
c语言中
x=
2 y=2
z=
0若执行完a=
++x
ll
++y
&&
z++
后x y z的值?
答:
同时C语言还有一个优化,逻辑运算符从左向右计算,当左边的结果计算出来之后,已经可以预知整个表达式的结果时,后面将不会计算。因此
++x
||
++y
,即3 || ++y,真|| ++y,结果已经为真。所以++y将不会计算。真 &&
z++,
即真 && 假。所以x和z经过了自增
,y
没有经过。最终结果就是3 2 1。
首页
<上一页
4
5
6
7
9
10
8
11
12
13
下一页
尾页
其他人还搜