关于c语言的一道选择题,高手帮我看看吧

.设char型变量x中的值为10100111,则表达式(2+x)^(~3)A)10101001B)10101000C)11111101D)01010101高手帮我分析下吧... .设char型变量x中的值为10100111,则表达式(2+x)^(~3)
A)10101001 B)10101000 C)11111101 D)01010101
高手帮我分析下吧,该选哪个?为什么?先谢谢了处理提问
展开
 我来答
bloodelf02
2011-06-12 · TA获得超过1657个赞
知道小有建树答主
回答量:328
采纳率:0%
帮助的人:487万
展开全部
D, 这么简单。

x = 10100111
2 = 00000010
x+2 = 10101001
---------------------

3 = 00000011
~3 = 11111100 (取反)

--------------------

然后做 异或
x+2 = 10101001
~3 = 11111100
结果 = 01010101
追问
大哥,小弟还有一点不懂就是把x+2如何合成,最后等于10101001.还有x+2的结果与~3的结果合成,最后等于01010101。这是什么算法,还望指点一二。谢谢了
追答
x+2 就是简单的2进制加法, 1+1 = 0并且进位1, 0+0=0,0+1=1+0=1,不进位。

x+2的结果与~3的结果合成,是2进制的异或,也就是^。
0^0=1^1= 0 0^1=1^0=1, 也就是 位相同,结果为0, 位不同,结果为1.

我上面的算式回答全部是给你对好位了的,你竖着看啊

参考资料: 就直接在这个文本框里敲敲,结果就出来了,很简单的

zhuancui26
2011-06-11 · TA获得超过611个赞
知道小有建树答主
回答量:1619
采纳率:0%
帮助的人:860万
展开全部
如果我没记错的话 B这种形式传的是形参,也就是说,在函数内部把x和y交换了但在函数外部,并没有交换x和y 答案是A: 显然不是B啊~~ B,不能
追问
能具体点么?我真是c语言菜鸟,谢谢了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
个性昵称VIP
2011-06-11 · TA获得超过962个赞
知道小有建树答主
回答量:702
采纳率:0%
帮助的人:317万
展开全部
大哥你把表达式搞清楚点先!貌似看不懂啊!
追问
其实,我也没看懂,我是c语言初学者,我感觉一般经常学这个东西的人应该一看就明白了吧。所以我在等能看懂的人呀
追答
不是我不会,(2+x)^(~3)   这表达式似乎不对,你看一下把符号打错没
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式