手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

十进制转换为二进制的c++代码

时间:2024-10-12 06:47:09

#include &盟敢势袂lt;iostream>//将十进制转为二进制,并输出其中1的个数。

usin爿讥旌护g namespace std;

int main()

{

int t,n,a[100];

int i,k,j;

cin>>t;

while(t--)//控制多组输入

{

i=j=0;

cin>>n;

while(n!=0)//该循环将十进制转为二进制并存入数组a

{

a[i++]=n%2;

n/=2;

}

for(k=i-1;k>=0;k--)//倒序输出二进制

{

if(k==i-1)cout<<a[k];

else cout<<" "<<a[k];

if(a[k]==1)j++;

}

cout<<endl;

cout<<j<<endl;//输出1的个数

}

return 0;

}

十进制转换为二进制的c++代码

扩展资料

void ten_to_two( int n )

{ int i , j ; int a[1000] ; memset( a , 0 , sizeof(a) ); // 一定要记得每次运算前将a数组清零

i = n ;

j = 1 ; while(i){

a[j] = i & 1 ; //取最后一位

i >>= 1 ; //除以2

++ j ;

} for( i = 7 ; i >= 0 ; -- i ) // 将结果呈八位数输出 倒序!

//(如果想输出本来位数的话就把 7 改成 j - 1 就ok啦)

cout << a[i] ; cout << endl ;

}

参考资料:百度百科 进制转换

© 手抄报圈