编写简单函数:让一个无符号数的二进制码按位反转,即1->32,32->1;

来源:互联网 发布:更相减损算法图 编辑:程序博客网 时间:2024/06/05 06:00
#include<stdio.h>#include<stdlib.h>unsigned int reverse_bit(unsigned  x){ unsigned int a; unsigned int b=1,i,t;  a = n&b;      //按位或 for (i = 0; i < 31; i++) {  a <<= 1;        //左移  n >>= 1;        //右移  t = n&b;  a = a | t; } return a;         //返回反转后的数}int main(){    unsigned int  value; printf("请输入您想要反转的数:"); scanf("%d", &value); printf("反转后的数为:%d\n", reverse_bit(value)); //调用反转函数并输出 system("pause"); return 0;}

本文只是在下在学习过程自己的想法,只能实现简单功能,可能还没考虑到程序的优化,与大神写出来的代码还有一定差距,如果那位大神发现了问题,请您不吝赐教,如果您还有更好的方法,不妨分享分享,谢谢!

本文出自 “分享中进步” 博客,请务必保留此出处http://xmwen1.blog.51cto.com/10730069/1706063

0 0
原创粉丝点击