问题
单项选择题
以下程序的运行结果是
#include <stdio.h>
main()
int a=1, b=2, c=3, x;
x=(a^b)&c; printf("%d\n", x);
A) 0
B) 1
C) 2
D) 3
答案
参考答案:D
解析: ^按位异或运算表示两位不同则为1,否则为0。&按位与运算表示两位都为1则为1,否则为0。所以(a^b)&c=(01^10) &11=11&11=11,二进制的11即为十进制的3。