【小米OJ-反向位整数】简单位运算

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <stddef.h>
#include <ctype.h>
typedef long long ll;
int main()
{
    // please write your code here
    ll n,m;
    scanf("%lld",&n);
    m=0;
    for(int i=0;i<32;i++)
        m|=((1&(n>>i))<<(31-i));///(1&(n>>i)从右到左取位,(31-i)反转
    printf("%lld\n",m);
    return 0;
}

  

posted @ 2020-05-15 20:48  wusheng_z  阅读(169)  评论(0编辑  收藏  举报