求一個正整數轉換爲二進制數時中‘1’的個數二進制
分析:這道題目就是很簡單的位運算,咱們能夠把這個整數和1進行&操做(就是二進制數中的最低位與1進行&),而後將這個整數進行右移處理,將下個位置的數字移到最低位;反覆如此操做直到該數變爲0。im
1 int NumOf_one(int k) 2 { 3 int count_1 = 0; 4 while(k) 5 { 6 if(k & 1) 7 count_1++; 8 k >>= 1; 9 } 10 return count_1; 11 }