c/c++ 求一個整數轉換爲二進制數時中‘1’的個數

求一個正整數轉換爲二進制數時中‘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 }

複製代碼

相關文章
相關標籤/搜索