问题 单项选择题

以下程序:
main()
unsigned char a=2,b=4,c=5,d;
d=a|b;d&=c;printf("%d\n",d);

程序运行后的输出结果是

A) 3
B) 4
C) 5
D) 6

答案

参考答案:B

解析: 本题考查的是逻辑运算。本题中主要是进行位的逻辑运算。将a的值转换成二进制为:0000 0010,b的值转换成二进制为:0000 0100,将a、b进行按位或运算(参加计算的两个位只要有一个为1,那么运算结果为1),因此此时d的二进制为:0000 0110,c的值转换成二进制为:00000101,接下来将d和c进行按位与运算(参加计算的两个位都为1,则结果为1,否则为0),结果为:0000 0100,转换成十进制数结果为4。

不定项选择
多项选择题