以下程序中c的二进制值是( )。
char a=3,b=6,c;
c=a^b<<2;
A. 00011011 B. 00010100 C. 00011100 D. 00011000
先进行左移再异成
3=000011
6=000110,右移两位,011000,^亦或运算
000011
011000
011011
【答案】A
【解析】在位运算...
用户登录可进行刷题及查看答案
【解析】在位运算中,左移运算符(<<)的优先级高于按位异或运算符(^),所以先进行b<<2运算。B的值是6,左移两位就等于乘4,所以b<<2的值是24;然后进行异或运算,异或运算的规则是:参与运算的两个数中相对应的二进制位上,若数相同,则该位的结果为0;数不同,则该位的结果为1。经过异或后的值为11011。所以选项A是正确的。
登录后提交答案