写一个宏可以将一个数字的奇数位和偶数位交换
程序代码如下:
#include <stdio.h>
#define CHANGE(X) ((X & 0x55555555) << 1) | ((X & 0xAAAAAAAA) >> 1)
int main()
{
int x = 0;
printf("请输入一个整数:");
scanf("%d", &x);
printf("奇数位与偶数位交换:%d\n", CHANGE(x));
return 0;
}
程序运行结果如下: