已有定义:int x=7,y=8,z=9;则表达式!(x+y)+z

作者&投稿:孔服 (若有异议请与网页底部的电邮联系)
已有定义:int x=7,y=8,z=9;则表达式!(x+y)+z-1&&y+z/2的值是多少?详细解释!~

1 请联系我QQ

step 1: x*y=7*8=56
step 2: 计算除法,除数是z++,被除数是56;
这时要考虑z++与其他表达式混合运算时的特点:先使用后自增,所以在参与除法运算时z的取值是未自增之前的值——5
step 3:计算55/5=11.
而不是
56/6=9

为9,!(x+y) = 0
在加z就好了。

(x+y)+z=24
!(x+y)+z=9


新密市18720147285: 已有定义:int x=7,y=8,z=9;则表达式!(x+y)+z -
苍哑瑞巴: (x+y)+z=24 !(x+y)+z=9

新密市18720147285: 执行int x=7,y=8;y - =x--后x,y的值分别是什么? -
苍哑瑞巴: y-=x y=y-x x=7 y=1

新密市18720147285: C++运算符优先级问题:已知int x=7,y=8,z=5;则表达式(x*y/z++)的值是11 -
苍哑瑞巴: 说明:++如果在数右边的话是在计算之后才+1 所以7*8/5=11(整数出发,56/5=11.2,小数部分全部舍掉) 最后算++但是对当前的结果11已经没有影响了.

新密市18720147285: C++运算位操作 -
苍哑瑞巴: 看了楼下的答案,我想我该改一下. 结果是15,我以前把&当成左结合了. ~z是按位取反,为-4;即1100 x^y为15;1111; x^y&~z为1100,为15; 这里应该先算y&~z如果答案是12的话程序为 #include <iostream> using namespace std; int main() {int x=7,y=8,z=3;int a=(x^y)&~z;cout<<a<<endl;return 0;} 而这里应该改成x^(y&~z),答案是15.

新密市18720147285: 已知int x=7,y=8,z=3,则表达式x^y& - z的结果为啥是15,求大神给出解答 -
苍哑瑞巴: 因为按位与&的优先级高于按位异或^的优先级:

新密市18720147285: 已知int x=7,y=8,z=5;则表达式(x*y/z++)值为什么是11而不是9,z++的优先级不是最高吗 -
苍哑瑞巴: step 1: x*y=7*8=56 step 2: 计算除法,除数是z++,被除数是56; 这时要考虑z++与其他表达式混合运算时的特点:先使用后自增,所以在参与除法运算时z的取值是未自增之前的值——5 step 3:计算55/5=11. 而不是 56/6=9

新密市18720147285: 若已定义:int x=7,y=5; 则表达式(x^y)<<2的值为什么 为 8 -
苍哑瑞巴: 这样的嘛..7的二进制是0111,5的二进制是0101,x^y表示异或,相异为1,相同为0.这他们两个的结果就是0010,然后再向右移动两位,就是1向右移动两个.完了,右边补0...1就变化到了最高位了.这个时候就表示8了..8的二进制就是1000..所以说就是8 了.

新密市18720147285: ...B、3 C、2 D、1 7、已有int x=2,y=7;则printf("%d",x+y==6);的输出结果是():(1分) A、0 B、3 C、9 D、2 8、若已定义:int a[]={0,1,2,3,4,5,6,7,8... -
苍哑瑞巴:[答案] 1、下列常数中不能作为C的常量的是()(1分) D、3e2.5 幂只能是整型 2、设x、y均为int类型变量,且x=10,y=3,则以下语句 printf(“%d,%d\n”,x--,--y);的输出结果是():(1分) D、10,2 x--是本身的值等于x,用...

新密市18720147285: 若有定义int x,y; -
苍哑瑞巴: x-y 是整形变量,则如果结果为0,(y++) 反之,(x++) 注意,这是 条件语句的强行规定,必须这样!

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网