int a; a=(int)((double)(3/2)+0.5+(int)1.99*2); printf("%d\n",a); 求答案
2个回答
展开全部
(double)(3/2)的值为1.0,因为先计算3/2结果为1,然后再转换为浮点数1.0
(int)1.99*2,括号的优先级大于*,所以先把1.99转换为int型为1然后再乘2,结果为2
最后3个数相加1.0+0.5+2=3.5
最后转换成int型,结果为3
(int)1.99*2,括号的优先级大于*,所以先把1.99转换为int型为1然后再乘2,结果为2
最后3个数相加1.0+0.5+2=3.5
最后转换成int型,结果为3
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询