C语言题目,求答案,求解释

设int x;,则与计算︱x︱等价的表达式是________。
A. x>0?-x:x
B. x>0?x:-x
C. x<0?x:-x
D. x<0?-x:-x
最好能举个例子,谢谢了

答案是B,解释如下:
设X为-1
x>0?x:-x;也就是x是否是大于零的数?大于零,号就是你了,不是零,不行,要取你的相反数!
所以x=-1,-x=1,所以如题
再设X=1
x=1,不用-x就可以了,所以如题

满意采纳,不满意请追问
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-06-10
答案是选B;
因为x>0?x:-x 这个语句是先判断X是否大于0,如果大于0则值为X,否则为-x

还有不懂可以追问
第2个回答  2013-06-10
这种表达式应该知道意思了,若条件为真取问号后面的,否则取:号后面的

x的绝对值非负,如果x大于0,那么x的绝对值等于本身,x小于0,那么他的绝对值就是他的相反数了。那么知道答案了。
答案就是B了。
相似回答