1.求二进制中1的个数
while(n) { n&=n-1; c++;//c则为二进制中1的个数 }
#include<iostream> using namespace std; int main() { int x; cin>>x; int cnt=0; for(int i=0;i<=31;i++) { if(x>>i&1)cnt++; } cout<<cnt<<endl; }
while(n) { n&=n-1; c++;//c则为二进制中1的个数 }
#include<iostream> using namespace std; int main() { int x; cin>>x; int cnt=0; for(int i=0;i<=31;i++) { if(x>>i&1)cnt++; } cout<<cnt<<endl; }