A-A+

有以下程序main (){ unsigned char a b c; a=0x3; b=

2022-08-06 04:25:39 问答库 阅读 175 次

问题详情

有以下程序main (){ unsigned char a, b, c; a=0x3; b=a|0x8; c=b<<1; printf ("~%d% dn" ,b, C) ;} 程序运行后的输出结果是
A.-11 12
B.-19
C.12 24
D.11 22请帮忙给出正确答案和分析,谢谢!

参考答案

正确答案:D
解析:本题考查的知识点是位的逻辑运算和位的移位运算。将a的值转换为二进制位:00000011,再与0×8的;进制“00001000”位与,得到结果“00001011”赋值给b,b的值为11,再将b左移一位得到:00010110,赋值给c,c的值为22,所以最后输出的b,c的值位11,22。所以4个选项中D正确。

考点:程序