1个回答
展开全部
将各变量的值代入表达式
表达式变成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;
}
运行截图:
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询