设x=2.5, a=7, y=4.7,则表达式x+a%3*(int)(x+y)%2/4的值程序怎么?

程序怎么写... 程序怎么写 展开
 我来答
尚御菊秋06
2022-02-07
知道答主
回答量:47
采纳率:100%
帮助的人:1.5万
展开全部

将各变量的值代入表达式

表达式变成2.5+7%3*(int)(2.5+4.7)%2/4

因为%的优先于+,所以先计算7%3


表达式变成2.5+1*(int)(2.5+4.7)%2/4

因为%与*处于同一优先级且结合性是自左向右,又因为表达式(2.5+4.7)有括号,所以计算2.5+4.7

表达式变成2.5+1*(int)7.2%2/4

因为强制类型转换符(int)优先于*,所以计算(int)7.2

表达式变成2.5+1*7%2/4

由于*和%和/处于同一优先级且结合性是自左向右,所以按自左向右的顺序计算1*7%2/4

表达式变成2.5+0

进行加法运算

表达式变成2.5,即结果

优先级

优先级

网址:

附:

c++11 程序:

#include<iostream>

int main(){

using namespace std;

double x=2.5,y=4.7;

int a=7;

cout << x+a%3*(int)(x+y)%2/4;

return 0;

}

运行截图:

运行截图

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式