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

程序:

#include<stdio.h>

int main()

{

int i, j, num;

char arr1[16];

char arr2[16];

printf("输入一个整数:");

scanf("%d", &num);

for (i = 0, j = 0; i < 32; i += 2, j++)

{

arr1[15 - j] = (num >> i) & 1;//从后向前存储

}

for (j = 0; j < 16; j++)

{

printf("%d ", arr1[j]);

}

printf("\n");

for (i = 1, j = 0; i < 32; i += 2, j++)

{

arr2[15 - j] = (num >> i) & 1;

}

for (j = 0; j < 16; j++)

{

printf("%d ", arr2[j]);

}

printf("\n");

return 0;

}

结果:

输入一个整数:2

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1

请按任意键继续. . .