main() { double d=3.2; int x,y; x=1.2; y=(x+3.8 5

main(){doubled=3.2;intx,y;x=1.2;y=(x+3.8)/5.0;printf("%d\n",d*y);}A3B3.2C0D3.07... main()
{ double d=3.2; int x,y;
x=1.2; y=(x+3.8)/5.0;
printf("%d\n",d*y);
}
A 3 B 3.2 C 0 D 3.07
展开
 我来答
百度网友83cdc1c
推荐于2018-02-27 · TA获得超过5788个赞
知道大有可为答主
回答量:1907
采纳率:100%
帮助的人:767万
展开全部

执行结果,输出为0。

x是整形,x=1.2,实际会把小数部分舍掉,x的值为1

y=(x+3.8)/5.0,相当于y=(1+3.8)/5.0,虽然右边是浮点运算,结果不为0,但结果的整数部分为0,赋给整形的y的时候,同样舍去小数部分,y的值为0

最后输出d*y,无论d的值是什么,结果都为0。

piestkj
2015-07-12 · TA获得超过927个赞
知道小有建树答主
回答量:820
采纳率:0%
帮助的人:589万
展开全部
最有可能是C,因为3.2的前4个字节应该是0x00000000。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
喵不语__
2015-07-12 · TA获得超过2.5万个赞
知道大有可为答主
回答量:3281
采纳率:75%
帮助的人:566万
展开全部
x=1.,y=4.8/5.0=0.9
由于y为int型所以取0x1=0
追答
y=0.96取0
0x3.2=0
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
十年霸王2012
2015-07-12 · TA获得超过1444个赞
知道大有可为答主
回答量:1952
采纳率:85%
帮助的人:303万
展开全部
这道题对吗?int是单字整数哦,怎么可能赋值成1.2?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
归孟vR
2015-07-12 · TA获得超过187个赞
知道答主
回答量:172
采纳率:100%
帮助的人:35.2万
展开全部
好羡慕,
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式