答案为1。
详解:
!(a+b)+c-1 && b+c/2
等价于
(!(a+b)+c-1) && (b+c/2)
计算机内部计算步骤(可以查看汇编)
先算!(a+b)+c-1 ——>0+5-1——>4
测试上一步结果(结果为4),表达式为真。
再算b+c/2——>结果为6(注意4/2结果为2,因为都是整型,余数丢掉)
测试上一步结果(结果为6),表达式为真。
最后,将结果1赋给整个表达式,即最后的结果。
#include <iostream>
using namespace std;
int main()
{
int a = 3,b = 4,c = 5;
int result = !(a+b)+c-1 && b+c/2;
int step1 = !(a+b)+c-1;
int step2 = b+c/2;
cout<<"The result is ";
cout<<result<<endl;
return 1;
}
温馨提示:内容为网友见解,仅供参考