关于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,可是为什么,题目也不是很懂什么意思,求高手指点 展开
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,可是为什么,题目也不是很懂什么意思,求高手指点 展开
1个回答
展开全部
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 进行四舍五入的。
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 进行四舍五入的。
来自:求助得到的回答
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询