![](https://iknow-base.cdn.bcebos.com/lxb/notice.png)
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 展开
{ 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 展开
5个回答
展开全部
执行结果,输出为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。
展开全部
最有可能是C,因为3.2的前4个字节应该是0x00000000。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
x=1.,y=4.8/5.0=0.9
由于y为int型所以取0x1=0
由于y为int型所以取0x1=0
追答
y=0.96取0
0x3.2=0
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这道题对吗?int是单字整数哦,怎么可能赋值成1.2?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
好羡慕,
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询