C语言——获取一个数二进制序列中所有的偶数位和奇数位, 分别输出其二进制序列。

题目描述:获取一个数二进制序列中所有的偶数位和奇数位,分别输出其二进制序列。

   二进制数:00000000 00000000 00000000 00011001       //25
   偶数序列:0000000000000010
   奇数序列:0000000000000101

思路解答:通过按位与(&)运算 暴力搜索 获取每一位

有没有其他简洁 的思路可以分享

#include<stdio.h>

int main()
{
    
    
    int value = 0;
    scanf("%d", &value); 
    
    printf("偶数序列>");
    for (int i = 31; i >= 1; i -= 2)
    {
    
    
        printf("%d", (value >> i) & 1);
    }
    printf("\n");

    printf("奇数序列>");
    for (int j = 30; j >= 0; j -= 2)
    {
    
    
        printf("%d", (value >> j) & 1);
    }
    return 0;
}

猜你喜欢

转载自blog.csdn.net/and_what_not/article/details/113764194
今日推荐