首先我们看一下输出一个整数二进制的所有位。
如果要输出它的所有位,从最高位开始每次移动i个长度,并且每一位都与1。
代码:
#include <stdio.h> int main() { int num = 9; int i; for (i = 31; i>=0;i--) { printf("%d",((num>>i)&1)); } return 0; }
同理奇数位从它的最高位开始,每次移动i个长度并且i=i-2,每一位都与1,。偶数位从第二为开始与奇数位移动相同。
代码:
#include <stdio.h> int main() { int i; int num=9; printf("奇数位"); for (i=31;i>=0;i-=2) { printf("%d",((num>>i)&1)); } printf("偶数位"); for (i=30;i>=0;i-=2) { printf("%d",((num>>i)&1)); } return 0; }
时间: 2024-10-10 11:06:28