以下程序的输出结果是( ) #include <stdio.h> void main() { char a=3,b=6,c;

以下程序的输出结果是(B)#include<stdio.h>voidmain(){chara=3,b=6,c;c=a^(b<<2);printf("%x",c);}A)1... 以下程序的输出结果是( B )
#include <stdio.h>
void main()
{ char a=3,b=6,c;
c=a^(b<<2);
printf("%x",c);
}
A)1c B)14 C) 1b D)18
请问b<<2后值是多少
打错了 答案是C
展开
 我来答
听不清啊
高粉答主

2016-12-27 · 说的都是干货,快来关注
知道顶级答主
回答量:7.8万
采纳率:89%
帮助的人:1.9亿
展开全部
b<<2后值就是6*2^2=24

3^24=27
其16进制值为1b,选答案C
追问
请问^在C语言中是什么意思,还有为什么27的十六进制值是1b.
麻烦解释一下,期末要考试了。。
追答
^是按位异或运算。参与运算的两个十进制位相同时,值为0,不同时值为1。
即:
0^0=0
0^1=1
1^0=1
1^1=0
把两个二进制数打竖式对齐,然后每一位均作上述运算即可。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
cdyzxy
2016-12-27 · TA获得超过2.1万个赞
知道大有可为答主
回答量:1.4万
采纳率:84%
帮助的人:3679万
展开全部
a=3,b=6
b<<2=00000110B<<2=00011000B=18H
a^(b<<2)=00000011B^00011000B=00011011B=1bH
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友2fa9ee2
2016-12-27 · TA获得超过171个赞
知道小有建树答主
回答量:212
采纳率:0%
帮助的人:105万
展开全部
b=6=110,110<<2 = 11000 = 0x18
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式