實現如下:(C實現)
#include<stdio.h>
void main()
{
int i,count=0;
scanf("%d",&i); //輸入壹個數i。
do
if((i%2)!=0) //判斷末尾是否為1
count++; //末尾為1則count++
}
i=i/2; //i除2,相當於右移壹位
}while(i>=1);
printf("1的個數為%d\n",count); //輸出結果