#include <iostream> using namespace std; void main(void) { int dec,bin,i,m; cout<<"输入整数:"; cin>>dec; cout<<dec<<"对应的2进制为:"; m=sizeof(int)*8; //int数据的比特数 for(i=m-1;i>=0;i--) cout<<(dec>>i&1); //十进制转二进制,dec>>i&1由左向右结合 for(bin=0;dec;dec&=dec-1) //查找二进制中1的个数 bin++; cout<<endl<<"其中1的个数为"<<bin<<endl; system("pause"); }