#include <stdio.h>
#include <string.h>
/***************************************
unsigned int类型的数二进制中最高位1
的位置
例如:0000 0000 0000 0001中返回0
0000 0000 1111 0000中返回7而不是4
****************************************/
int FindPosition(unsigned int n)
{
int position=0;
unsigned int m=n;
while(m)
{
m=m>>1;
if(m)
position++;
}
return position;
}
int main()
{
printf("In the binary of 1 the largest position of 1 is: %d\n",FindPosition(1));
printf("In the binary of 240 the largest position of 1 is: %d\n",FindPosition(240));
}
二进制中最高位1的位置
最新推荐文章于 2023-10-29 22:20:45 发布