这里还是要用到前一个博客中讲解的位操作符知识,有兴趣的可以去看看
要实现该代码主要是要用到(x>>i)&1的知识,x表示是输入的数,i表循环的变量,这里可以带到代码中去看。
#include <stdio.h>
#include <windows.h>
#pragma warning (disable:4996)
void Parate(int x)
{
printf("该数二进制的偶数位为:");
for (int i = 31; i >=0; i -= 2)//判定二进制偶数位
{
printf("%d", (x >> i) & 1);
}
printf("\n");
printf("该数二进制的奇数位为:");
for (int i = 30; i >0; i -= 2)//判定二进制奇数位
{
printf("%d", (x >> i) & 1);
}
}
int main()
{
int x = 0;
printf("请输入一个数:");
scanf("%d",&x);
Parate(x);
system("pause");
return 0;
}
运行截图

本文通过使用位操作符((x>>i)&1),演示了如何判断一个整数在二进制表示下,其奇数位和偶数位的数值。通过两个循环分别遍历所有偶数位和奇数位,打印出每一位的值,帮助读者理解位运算在实际编程中的应用。
1708

被折叠的 条评论
为什么被折叠?



