How to count the number of 1 bit in integer in C

2 Answers

0 votes
#include <stdio.h>
   
int main(int argc, char **argv) 
{ 
    int n = 100, i;
    
    for (i = 0; n != 0; n >>= 1) 
         if (n & 1) 
             i++; 
               
    printf("%d", i);
     
    return 0;
}
 

/*
   
run:
    
3
 
*/

 



answered Nov 6, 2015 by avibootz
0 votes
#include <stdio.h>

int count_bit_one(int n);
   
int main(int argc, char **argv) 
{ 
    printf("%d", count_bit_one(100));
     
    return 0;
}
 
int count_bit_one(int n)
{
    int i;
    
    for (i = 0; n != 0; n >>= 1) 
         if (n & 1) 
             i++; 
            
    return i;
}

/*
   
run:
    
3
 
*/

 



answered Nov 6, 2015 by avibootz

Related questions

2 answers 151 views
2 answers 169 views
1 answer 176 views
1 answer 109 views
1 answer 122 views
...