(float)(a+b)/2+(int)x%(int)y 设a=2,b=3,x=3.5,y=2.5 求表达式值

(float)(a+b)/2+(int)x%(int)y设a=2,b=3,x=3.5,y=2.5求表达式值我想知道float怎么取的值,int强制转换四舍五入吗?最好说下... (float)(a+b)/2+(int)x%(int)y 设a=2,b=3,x=3.5,y=2.5 求表达式值 我想知道float怎么取的值, int强制转换四舍五入吗? 最好说下计算过程不胜感激 展开
 我来答
杜xiao若
2018-12-16 · TA获得超过9864个赞
知道答主
回答量:71
采纳率:100%
帮助的人:13.6万
展开全部

详细计算分析过程如下:

1、在该表达式中,分别有以下几个运算符:圆括号、强制类型转换、除法、取余和加法。

根据运算符的优先级,圆括号优先级最高,其次是强制类型转换,然后是除法“/”和取余“%”,最后是加法运算。因此,首先计算圆括号中的内容,由于a=2,b=3,表达式转化为:(float)5/2+(int)x%(int)y;

2、进行运算类型强制转换,(float)5中是将int类型的值转为float类型,因此整数5转换为小数5.0,由于x=3.5,y=2.5,x、y均为小数,强制转换为int类型时,直接取其整数,舍去小数,(int)3.5转为3,(int)2.5转为2,表达式转化为:5.0/2+3%2;

3、进行除法和取余运算,5.0/2=2.5,3%2=1,因此,表达式转化为:2.5+1;

4、进行加法运算,float类型的值与int类型的值相加,最终结果将输出float类型的值,因此,加法运算的最终结果为:3.5。即,表达式最终的结果为3.5。

扩展资料

1、运算符优先级存在的必要性:在一个表达式中可能包含多个有不同运算符连接起来的、具有不同数据类型的数据对象;由于表达式有多种运算,不同的运算顺序可能得出不同结果甚至出现错误运算错误,因为当表达式中含多种运算时,必须按一定顺序进行结合,才能保证运算的合理性和结果的正确性、唯一性。

2、运算符优先级的具体操作方式:优先级从上到下依次递减,最上面具有最高的优先级,逗号操作符具有最低的优先级。表达式的结合次序取决于表达式中各种运算符的优先级。优先级高的运算符先结合,优先级低的运算符后结合,同一行中的运算符的优先级相同。

参考资料:百度百科:运算符优先级

OhYeah_Dragon
2010-09-17 · TA获得超过340个赞
知道答主
回答量:213
采纳率:0%
帮助的人:212万
展开全部
对浮点数强制类型转换成INT型会直接截位,你可以认为是取整
也就是(int)x 为3 (int)y为2
%是求余数 所以 3%2是1
(a+b)/2转成float是2.5
所以是2.5+1=3.5
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
我今天上课了
2010-09-17 · TA获得超过1410个赞
知道小有建树答主
回答量:844
采纳率:0%
帮助的人:675万
展开全部
计算过程:
a+b = 5
(float)5 5.0
5.0/2 2.5

(int)x 3
(int)y 2
%取余 1

最后+ 2.5+1 = 3.5
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ficuep
2010-09-28
知道答主
回答量:5
采纳率:0%
帮助的人:0
展开全部
(float)(a+b)/2=2.5
(int)x%(int)y=1
最后结果为 3.5,因为一个int与一个float类型的数相加结果会自动转化为float类型
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
chaizheng8
2013-06-21 · TA获得超过361个赞
知道小有建树答主
回答量:369
采纳率:50%
帮助的人:373万
展开全部
4和float之间什么运算符?

第一题3
第二题3.5

你要详细步骤?呵呵
#include<stdio.h>
#include<iostream>
using namespace std;
int main()
{
int a=2,b=3,x=3.5,y=2.5;
cout<<x+a%3*(int)(x+y)%2/4<<" "<<(float)(a+b)/2+(int)x%(int)y<<endl;
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式