//求一個整數在二進制中1的個數 int main() { int num = 0; int count = 0; scanf("%d", &num); ////統計num的補碼中有幾個1 //while (num) //{ // if (num% 2== 1) // count++; // num = num / 2; //} int i = 0; for (i = 0;i < 32;i++) { if(1==((num>>i)&1)) count++; } printf("%d\n", count); return 0; }