摘要:
1、用一个表达式,判断一个数X是否是2的N次方(2,4,8,16.....),不可用循环语句。解析:X:2,4,8,16转化成二进制是10,100,1000,10000。如果减1则变成01,011,0111,01111。两者做按位与运算,结果如果为0,则X是2的N次方。答案:!(X&(X-1))2、统计一个整数的二进制中1的个数int CountNumberOfOne(int number){ int counter = 0; while (number) { number &= number - 1 ; counter++; } return counter;}3、对... 阅读全文