C语言基础题,谁帮我分析下解题思路,详细点,3Q

15.设整型变量a=2,则执行下列语句后,浮点型变量b的值不为0.5的是()A.b=1.0/aB.b=(float)(1/a)C.b=1/(float)aD.b=1/(a... 15.设整型变量a=2,则执行下列语句后,浮点型变量b的值不为0.5的是( )
A.b=1.0/a B.b=(float)(1/a) C.b=1/(float)a D.b=1/(a*1.0)
展开
 我来答
xoaxa
2014-12-11 · TA获得超过8601个赞
知道大有可为答主
回答量:6415
采纳率:72%
帮助的人:3280万
展开全部
B。
(1/a)是整形数相除,其商也是整形数,由于a > 1,所以 1/a 的值为0,(float)0,还是0.0。
风雷九州
推荐于2016-01-10 · TA获得超过3022个赞
知道大有可为答主
回答量:1127
采纳率:100%
帮助的人:382万
展开全部
A:1.0/a,其中1.0是float类型,a是int类型,那么先将a变成float类型,然后两个float类型做除法,结果是0.5,赋值给b,因此A是正确的。

B:(float)(1/a),其中1是int类型,a是int类型,因此1/a就是int类型,直接除法,结果为0,然后将0转换成float类型赋值给b,因此b的值还是0.00,B是错误的。

C:1/(float)a,其中1是int类型,a强制转换成了float类型,后面就同A了,正确。

D:1/(a*1.0),先计算a*1.0,其中a是int类型,1.0是float类型,结果也是float类型,后面同A的计算方式一样,正确。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
汉明图
2014-12-11 · 超过26用户采纳过TA的回答
知道答主
回答量:90
采纳率:0%
帮助的人:32.4万
展开全部
B 1/a=0 在float 之后还是0的 望采纳啊!!!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式