有以下程序 main() { unsigned char,a,b,c; a=0x3;b=a|0x8;c=b<<1; printf(“%d%d\n”,b,c); } 程序运行后的输出结果是

admin2010-01-10  22

问题 有以下程序    main()    { unsigned char,a,b,c;      a=0x3;b=a|0x8;c=b<<1;      printf(“%d%d\n”,b,c);    }    程序运行后的输出结果是

选项 A、-11 12
B、-19
C、12  24
D、11  22

答案8

解析 将a的值转换为二进制位:00000011,再与Ox8的二进制“00001000”位与,得到结果“00001011”赋值给b,b的值为11,再将b左移一位得到:0001 0110,赋值给c,c的值为22,所以最后输出的b,c的值位11,22。
转载请注明原文地址:https://kaotiyun.com/show/KHWp777K
0

最新回复(0)