问题 单项选择题

以下程序的运行结果是
#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。

单项选择题
单项选择题 共用题干题