// 将一个数的二进制序列逆序,然后输出逆序之后的二进制序,所对应的数 #include// 从原数拿出最低位,放到mid中,mid左移,原数右移 int reverse(int a) { int mid = 0; int bit; int n = 31; for (; n > 0; --n) { bit = a & 1; mid |= bit; mid <<= 1; a >>= 1; } return mid; } int main() { printf(%u , reverse(1)); printf(%u , reverse(0)); printf(%u , reverse(-1)); return 0; }
?
?

?
?
?