表达式 x<y?x++:y++ 的值为 ?要讲清楚怎么算的 谢谢

如题所述

这是一个式子,如果是z=x<y?x++:y++;的话,结果是x或者y中小的那个
比如x=3,y=5那么z=3。
其实就相当于x<y?x:y;只不过在这句话后面,如果x<y,会执行x++,x>=y会执行y++,但是这里的x++和y++是在这句话之后执行的,也就是:
比如x=3,y=5那么因为x<y,那么把x的值(这个时候是3)赋给z,也就是z=3;在z=3之后在执行x++;也就是x=4了,但是跟这个式子没关系了。
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-09-02
懂不懂这个,真的不影响编写优秀程序,优秀程序里面应该避免这些东西,别误入歧途。

一般情况下,你的表达式:
a= x<y?x++:y++

等效于:
a= x<y?x:y
x++;
y++;

明白了吧~因为++在变量右边,所以就先执行表达式再++。
第2个回答  2010-09-02
这段代码等同下面代码:
if (x < f) {
x++;
} else {
y++;
}
第3个回答  2010-09-02
如果x<y 那么执行x++
x>y 执行y++

表达式 x<y?x++:y++ 的值为 ?要讲清楚怎么算的 谢谢
这是一个式子,如果是z=x<y?x++:y++;的话,结果是x或者y中小的那个 比如x=3,y=5那么z=3。其实就相当于x<y?x:y;只不过在这句话后面,如果x<y,会执行x++,x>=y会执行y++,但是这里的x++和y++是在这句话之后执行的,也就是:比如x=3,y=5那么因为x<y,那么把x的值(这个时候是3...

C语言中z+=x<y?x++:y++的意思
判断 X<Y 为真 则 z=z+(x++);为假 则 z=z+(y++);

x<y?x++:y++
x+=y+=z;相当于:y=y+z;---y=5 x=x+y;---x=6 cout<<(x<y?y:x)<<",";相当于:if(x<y) cout<<y<<",";else cout<<x<<",";cout<<(x<y?x++:y++);相当于:if(x<y) cout<<x++;else cout<<y++;include<iostream> using namespace std;int main(){ int x=...

int x=3,y=3,z=1,则printf("%d\\n,z+=x<y?x++:y++);的值为多少?
由于+=优先级较高所以1+3=4.4不小于y所以执行y++ 3+1=4 结果是4

c语言(x-y)?(x++):(y++)
应该是C,此语句的意思是如果x-y为真 则执行x++,否则执行y++;c语言中非零即为真,所以此题应为C,呵呵!

...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++ 这里注意一下,要求输出的是y 不是y的值 ...

(x-y)?(x++):(y++)为什么与(x-y!=0)等价?
x=(a)?(b):(c) 的含义是如果a的值为真则x=b否则x=c (x-y)?(x++):(y++)相当于 if(x-y!=0)该式的值为x++ else 为 y++

int x=1,y=2,执行表达式(x>y)?++x;++y后,x和y的值??
搜索答案 我要提问 int x=1,y=2,执行表达式(x>y)?++x;++y后,x和y的值?? 我来答 首页 在问 全部问题 娱乐休闲 游戏 旅游 教育培训 金融财经 医疗健康 科技 家电数码 政策法规 文化历史 时尚美容 情感心理 汽车 生活 职业 母婴 三农 互联网 生产制造 其他 日报...

z=x>y?x++,++y是什么意思
z=x>y?x++:++y是 三目运算符:对于条件表达式b ? x : y,先计算条件b,然后进行判断。如果b的值为true,计算x的值,运算结果为x的值;否则,计算y的值,运算结果为y的值。例如:public class Test { public static void main(String[] args) { int a = 5; int b = 6; ...

z+=x>y?++x:++y是什么意思
x>y?x :y为条件表达式,若x>y成立则这个表达式的值为后面x,否则表达式的值是y,条件表达式的原型为:判断语句?表达式1:表达式2 若判断语句为真,则该条件表达式的值为表达式1的值,否则为表达式2的值。

相似回答