打印整数二进制的奇数位和偶数位
int main()
{
int n = 0; //5 二进制序列 - 0000 0000 0000 0000 0000 0000 0000 0101
scanf("%d", &n);
int i = 31;
while (i>=0)
{
printf("%d", (n >> i) & 1);//右移31位就是取的左边第一位,按位与1,是1才为1,否则为0
i--;
}
printf("\n");
printf("偶数位:");
for (i = 30; i >= 0; i -= 2)
{
printf("%d ", (n >> i) & 1);//同上
}
printf("\n");
printf("奇数位:");
for (i = 31; i >= 0; i -= 2)
{
printf("%d ", (n >> i) & 1);
}
return 0;
}