
跪求:若有定义:int x=3,y=2;float a=2.5,b=3.5;则表达式(x+y)%2+(int)a/(int)b的值为______。 5
展开全部
int x=3,y=2;float a=2.5,b=3.5;
(x+y)%2+(int)a/(int)b
1.计算x+y=3+2=5;
2.(x+y)%2表示除以2的余数。5/2=2余1
3.(int)a/(int)b;强制转换a=2,b=3;a/b=2/3=0
所以结果是1+0=1;
注意:
1.float型转换为int型,只取整数部分不产生四舍五入等效果。如float型3.82转换为int结果就是3
2.两个int型相除,结果也为int型,也是取整数部分。如2/3=0.666...取整数部分结果就是0
(x+y)%2+(int)a/(int)b
1.计算x+y=3+2=5;
2.(x+y)%2表示除以2的余数。5/2=2余1
3.(int)a/(int)b;强制转换a=2,b=3;a/b=2/3=0
所以结果是1+0=1;
注意:
1.float型转换为int型,只取整数部分不产生四舍五入等效果。如float型3.82转换为int结果就是3
2.两个int型相除,结果也为int型,也是取整数部分。如2/3=0.666...取整数部分结果就是0
展开全部
结果是1;
(x+y)%2=1这个不用说了,都是整形操作,没有问题
(int)a/(int)b =0为什么呢?(int)a,(int)b已经强行把float型转换成int型,系统将将调用/运算的整形形式,所以得到的结果也会取整,所以为0
(x+y)%2=1这个不用说了,都是整形操作,没有问题
(int)a/(int)b =0为什么呢?(int)a,(int)b已经强行把float型转换成int型,系统将将调用/运算的整形形式,所以得到的结果也会取整,所以为0
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
前面的是1,后面的是0,所以答案就是1了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果是C语言的话,为1吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询