c++简单问题,麻烦详细解释一下怎么来的,非常感谢!
2个回答
展开全部
注意运算符优先级。注意 % 是整除 取余数 运算。 注意 整数 除以 整数 是 整除运算。
第一题优先级 用 小括号 括出来了: x + ( (a%3) * (((int)(x+y)) %2) ) /4;
a%3 得 1。 x+y 得 7.2, 取整为7 ;7%2 得 1。
变成: x + ((1) * (1)) /4; 注意 1/4 得 0, 因为是 整除运算。
第一题 结果就是 x, 就是 2.5
第2题优先级 用 小括号 括出来了:
(((float)(a+b)) /2) + ((int)x) % ((int)y);
注意 (((float)(a+b)) /2) 这里 (浮点数 /2) 是 浮点计算,
第2题 化成 (5.0 /2.0) + (3) % (2) = 2.5 + 1 = 3.5
第一题 结果 3.5
第一题优先级 用 小括号 括出来了: x + ( (a%3) * (((int)(x+y)) %2) ) /4;
a%3 得 1。 x+y 得 7.2, 取整为7 ;7%2 得 1。
变成: x + ((1) * (1)) /4; 注意 1/4 得 0, 因为是 整除运算。
第一题 结果就是 x, 就是 2.5
第2题优先级 用 小括号 括出来了:
(((float)(a+b)) /2) + ((int)x) % ((int)y);
注意 (((float)(a+b)) /2) 这里 (浮点数 /2) 是 浮点计算,
第2题 化成 (5.0 /2.0) + (3) % (2) = 2.5 + 1 = 3.5
第一题 结果 3.5
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询