三目运算中 (x>=y)?x:y中的等号加还是不加

C语言 码拜 8年前 (2016-04-21) 841次浏览
有一道题目,其中第五个空要求填一个表达式,取x和y的最大值,正确答案是(x>=y)?x:y,但是本人假如填(x>y)?x:y,也就是没有了中间的=号,算不算正确?原因是假如当x==y的时候,本人不加等号就输出y,加等号输出x,感觉应该是一样的

但是这里的参考答案只给出了(x>=y)?x:y,
所以(x>y)?x:y算正确答案吗?
还是说这里其实有必须加等号的原因?


谢谢
三目运算中 (x>=y)?x:y中的等号加还是不加
三目运算中 (x>=y)?x:y中的等号加还是不加
解决方案

15

从功能上来说有没有等号都是可以的,效果一样

10

算正确,参考答案仅供参考

30

在此处加不加等号是一样的

5

“多一少一”问题占程序员常犯错误的10%以上!
避免“多一少一”问题的方法之一是将例如<10甚至<5的数代入程序片断,搬手指头心算验证一下程序到底应该写为
x、x-1、x+1中的哪个?
<、<=、==、>、>=中的哪个?

10

int max = x < y ? y : x;

能使用 < 的地方,不要使用其他的。

15

效果一样,答案只是个参考
不过在这里面很少用=

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明三目运算中 (x>=y)?x:y中的等号加还是不加
喜欢 (0)
[1034331897@qq.com]
分享 (0)