刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

单选题

设N和B都是(无符号)整型变量,下面c代码段的功能是计算变量B的二进制表示中( )。

N=0;
whileB.{
B=B&(B-1);    //"&"是按位"与"运算
N++;
}

A
数字1的个数
B
数字1比数字0多的数目
C
数字0的个数
D
数字0比数字1多的数目
使用微信搜索喵呜刷题,轻松应对考试!

答案:

A

解析:

本题考查的是对位运算的理解。根据代码片段中的逻辑,我们可以看到B经过与操作B&(B-1)后,会将最右侧的1变为0,其他位不变。这个过程会持续到B变为0为止,每次循环都会减少一个二进制位上的1。因此,这段代码的功能是计算变量B的二进制表示中数字1的个数。

创作类型:
原创

本文链接:设N和B都是(无符号)整型变量,下面c代码段的功能是计算变量B的二进制表示中( )。N=0; whi

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share