若有以下定义int x=3,y=2,则表达式y+=x–=y后的y值为

如题所述

第1个回答  2016-05-13
y = y + (x-=y)
y = y + (x = x - y)
y = y + (x = 3 - 2) 此时,x = 1
y = y + 1
y = 2 + 1
y等于3,x等于1本回答被网友采纳
第2个回答  2016-05-13
一步一步来y+=x是5
5-=y是多少呢就出来了
答案是3。

[判断题 1 ] int x=3,y=2; 则表达式(y++==--x)?y++:x++的值为3。
y++是先用再加,--x是先减再用 (y++==--x)?y++:x++-->y++先使用在加此时为2,--x先减再用此时为2 当判断结束后,y=3,x=2;这个时候前面的判断满足条件所以输出y++,y++又是先用在加,此时y=3 所以输出为3,但是y会变为4 ...

int x=3,y=2; 则表达式(y++==--x)?y++:x++的值为多少
这个表达式会先执行y++==--x,y++==--x的结果为true,执行结束后 y==3 x==2;接着执行y++, 执行结果y==4;所以这个表达式的值为3。再说一下y++==--x:++(或者--)运算写在变量左边和写在变量右边的值是不一样的,写在左边代表想运算再取值,写在右边表示先取值再运算;所以 y++表...

.若int x=1,y=2;则计算表达式y+=y-=x*=y后的y值是___。
y-=x:y=y-x=2-2=0 x=2,y=0 y+=y y=y+y=0+0=0 最后y的值是0。

Int x=3,y=2;则表达式printf(“%d”,(x-=y,x*=y+8\/5));的结果是什么
x-=y x=3-2=1 x*=y+8\/5 x=1*2+1=3 所以结果为3

.int x=3,y=2;则表达式x+=x*=y+8的值为__
60。——y+8==2+8==10 x=x*(y+8)==3*10==30 x=x+30==30+30==60

C语言中:int x=3,y=2;则表达式x+=x*=y+8的值为?
y+8=10 x*=10 => x=x*10 => x=30 x+=30 => x=x+30 => x=60

全国计算机等级考试三级笔试试题及答案?
(21) 已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1 && y+z\/2的值是( )。A) 6 B) 0 C) 2 D) 1(22) 有一函数, ,以下程序段中不能根据x值正确计算出y值的是( )。A) if(x>0) y=1; B) y=0; else if(x==0) y=0; if(x>0) y=1; else y=-1; else if(x<0) ...

若有以下定义int m=5,y=2;,则计算表达式y+=y-=m*=y后的y值是
y值是-16。从左往右分解,y+=y-=m*=y 就是 y=y+(y-=m*=y)y-=m*=y 就是 y=y-(m*=y)m*=y 就是 m=m*y 那么就等于 m=m*y; \/\/m=10, y=2 y=y-m; \/\/m=10, y=-8 y=y+y; \/\/m=10, y=-16

若有以下定义:int x=3,y=2;float a=2.5,b=3.5;则下面表达式的值为...
(x+y)%2+(int)a\/(int)b 其实就是 (3+2)%2+(int)2.5\/(int)3.5 首先执行括号里面的内容,得到表达式:5%2+(int)2.5\/(int)3.5 小数强制转换成整数,只会得到整数部分!所以得到表达式:5%2+(int)2\/3 "%"是取余的意思,所以5%2得到的余数是1 2\/3是一个小于1的小数,转化成...

int x=3,y=2;
= 的优先级最低,会先算 y+8\/5 的结果。8\/5 是整数除以整数,结果只会得到整数部分的1,然后 y+1 = 3,x *= 3 结果为 9 赋值给 x,再将 x 送入 printf 的格式化字符串中。

相似回答