中易网

设int a=3,b=5;float x=7.5,y=3,5;则表达式(float)a+b/2+(int)x%(int)y;的值为何是5.5

答案:3  悬赏:70  
解决时间 2021-02-26 17:44
这个题目百度知道里已经有人问了,回答的答案是6.0.但我在winTC 1.9.1以及TC2.01 dosbox版里运行得到的答案都是5.5,有谁能解释一下为何是这个结果。不要说这个答案错了,不信可以自己运行一下。
最佳答案
答案是否正确,你可以用手计算。

题目中 y=3逗号5, y值应当等于3,如果 y=(3,5) y值应当等于5, 如果逗号应是点号,则y=3.5.

一般思维:
a=3, (float)a 得 3.0 这点无疑问。
b/2 整型除以整型,5/2 得 2,转float 型 得 2.0.
(int) x 正数取地板值 得 7
(int) y 正数取地板值 得 3 或 5 或 3 之 1
(int) x % (int) y -- 模运算 得 1 或 得 2 两者之 1。
3项加起来 3.0 + 2.0 + (1 或 2 两者之 1) 答案 是 6.0 或 7.0

TC 是古老的东西。思维有个性。
按float处理:
a=3, (float)a 得 3.0 这点无疑问。
b/2 先 转float 型 5.0/2.0 得 2.5 。
(int) x 四舍五入 得 8
(int) y 四舍五入 (按3.5考虑)得 4
(int) x % (int) y = 8 % 4 得 0.0
3项加起来 3.0 + 2.5 + 0.0 = 5.5
全部回答
为什么我在VC++6.0里面测试时6.0啊
你好! 有趣的问题= =我先留个名。。看看有没有大神解答 我的回答你还满意吗~~
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
有什么游戏类似杀出重围3的游戏 求推荐
切开双眼皮做坏了是什么样的
郑州怎么订购牛奶
卡米甜品饮料店怎么去啊,有知道地址的么
辽阳市工商行政管理局弓长岭分局地址在哪,我
逆战的网络优化到底是怎么优化的
周亚福金店地址有知道的么?有点事想过去
常州市模具工业协会在哪里啊,我有事要去这个
醴陵有什么好玩的地方
新帕萨特换活塞环要把发动机全拆下来吗
does在什么情况下用
请问大家桥梁施工图上各种复杂钢筋的长度是怎
光泽县大陂良种场医务室地址有知道的么?有点
半年以上居住证是什么意思
坟墓里的磷为什么一直都有,难道不会烧光吗?
推荐资讯
德纳国际影城在什么地方啊,我要过去处理事情
She went to Beijing last year.改为否定句。
昆明市区四个主城区有几所普通高中?
八达电瓶电器批发这个地址在什么地方,我要处
故宫里面还有那些地方需要收费
关于均加速直线运动问题
全民k歌怎么设置那些非好友不能发私信
为什么现在的人,动不动就说开挂
大学09年毕业证具体什么时候拿的?什么时候能
3d试机号现在是几机几球在开
四坊整体橱柜衣柜这个地址在什么地方,我要处
老婆跑出去十多天联系不上怎么办
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?