1、编写函数:unsigned int  reverse_bit(unsigned int value);

这个函数的返回 值value的二进制位模式从左到右翻转后的值。

#include<stdio.h>
#include<math.h>
int reverse_bit(unsigned int value)
{
	int i=0;
	int arr[32]={0};
	int brr[32]={0};

	printf("num1翻转后二进制(num2): ");
	for(i=0;i<32;i++)    //value 二进制转化
	{
		arr[i]=value%2;
		value=value/2;
		printf("%d",arr[i]);
	}
	printf("\n");
	printf("num1翻转后数值(num2): ");
	for(i = 0;i < 32;i++)
	{
		value+=arr[i]*pow(2,31-i);
	}
	printf("num2=%d\n",value);

	printf("num1转换后二进制(num1): ");
	for(i = 31;i >= 0;i--)
	{
		printf("%d",arr[i]);
		if(i%4 == 0)
		{
			printf(" ");
		}
	}
	printf("\n");
}
int main()
{
	int num=0;
	printf("请输入数字(num1): ");
	scanf("%d",&num);
	reverse_bit(num);
	return 0;
}