关于c语言的问题 5

.设变量n为float类型,m为int类型,则以下能实现将n中的数值保留小数点后两位,第三位进行四舍五入运算的表达式是()A.n=(n*100+0.5)/100.0B.m... .设变量n为float类型,m为int类型,则以下能实现将n中的数值保留小数点后两位,第三位进行四舍五入运算的表达式是()
A.n=(n*100+0.5)/100.0 B.m=n*100+0.5,n=m/100.0
C.n=n*100+0.5/100.0 D.n=(n/100+0.5)*100.0
答案是B,可是为什么,题目也不是很懂什么意思,求高手指点
展开
 我来答
cunfu49
2012-12-23 · TA获得超过1528个赞
知道小有建树答主
回答量:829
采纳率:58%
帮助的人:237万
展开全部
A. n=(n*100+0.5)/100.0 因变量n为float类型,分子、分母、结果都将是float类型,不会进行舍入操作。

C.n=n*100+0.5/100.0 被 分为 n*100 和0.5/100.0 的和,更是错误。

D.n=(n/100+0.5)*100.0 先除后行乘 ,n将被 增大了50,错误。

B.m=n*100+0.5,n=m/100.0 先将 n*100+0.5, 的结果变为整型数送 m.
如:2.71828 X100 +0.5 = 271.828+0.5= 272,328,

因 m为int类型,只能接收保存其整数部分,故 m=272。再经 n=m/100.0 = 272/100.0 = 2.72. 又变为实型,实现了定位进行四舍五入进行的操作。

结论:实数是不能用式 n=(n*100+0.5)/100.0 进行四舍五入的。
来自:求助得到的回答
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式