设有定义,float x=2.5,a=7,y=4.7;则算数表达式x+a%3*(int)(x+y)
设有定义,floatx=2.5,a=7,y=4.7;则算数表达式x+a%3*(int)(x+y)%2/4的值为?为什么呢?新手不懂...
设有定义,float x=2.5,a=7,y=4.7;则算数表达式x+a%3*(int)(x+y)%2/4的值为?为什么呢?新手不懂
展开
4个回答
展开全部
x+a%3*(int)(x+y)
x+a%3*(int)(2.5+4.7)
2.5+7%3*(int)(7.2)
2.5+1*7=9.500000
请注意(int)(7.2),意思是强制把数据类型转换成int型,去掉小数部分,不会四舍五入,
最后float型与int型相加,两个数据类型自动转换成double型,结果9.500000,默认
小数位数是6位
x+a%3*(int)(x+y)%2/4
2.5+7%3*7%2/4
2.5+1*7%2/4
2.5+1/4=2.500000
注意1/4等于0,因为都是int型,结果只能是整数或者0
x+a%3*(int)(2.5+4.7)
2.5+7%3*(int)(7.2)
2.5+1*7=9.500000
请注意(int)(7.2),意思是强制把数据类型转换成int型,去掉小数部分,不会四舍五入,
最后float型与int型相加,两个数据类型自动转换成double型,结果9.500000,默认
小数位数是6位
x+a%3*(int)(x+y)%2/4
2.5+7%3*7%2/4
2.5+1*7%2/4
2.5+1/4=2.500000
注意1/4等于0,因为都是int型,结果只能是整数或者0
更多追问追答
追问
在吗?你好,请问2.5+1*7%2/4是怎么算的呀?
追答
2.5+1*7%2/4
2.5+7%2/4
2.5+1/4
2.5+0=2.5
展开全部
“(int)(x+y)”这里——x+y=7.2怎么能强转成int呢!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
报错有吧%只能用于整型
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
连编绎都通不过!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询