有以下程序 #include main() { unsigned char a=2, b=4, c=5, d; d = a | b; d &= c; printf("%d\n", d); } 程序运行后的输出结果是( )。

admin2015-07-28  30

问题 有以下程序
#include
main()
{ unsigned char a=2, b=4, c=5, d;
d = a | b; d &= c; printf("%d\n", d); }
程序运行后的输出结果是( )。

选项 A、4
B、3
C、5
D、6

答案A

解析 计算语句"d=a|b"时,字符a的ASCII码为2,对应二进制为0010;字符b的ASCII码为4,对应二进制为0100;所以按位或"|"运算之后d的二进制为0110。计算语句" d &= c;"时,字符c的ASCII码为5,对应二进制为0101,所以按位与"&"运算之后d的二进制数值为0100,对应十进制值为4,所以答案选A。
转载请注明原文地址:https://kaotiyun.com/show/G7Jp777K
0

最新回复(0)