C++求指针法将十进制数变二进制数,并把二进制数的每一位放在一维数组中输出

来源:百度知道 编辑:UC知道 时间:2024/06/16 19:53:04
同上

#include<iostream>
#include<cmath>
using std::cout;
using std::cin;
using std::endl;

void toBinary(unsigned int a,unsigned int* b,int length){
for(int i=length-1;i>=0;i--){
*(b+i)=a%2;
a/=2;
}
}

int main(){
unsigned int a;
cout<<"Enter the number: ";
cin>>a;
float l=log((float)a)/log((float)2);
int length=(int)l+1;
unsigned int* b=new unsigned int[length];
toBinary(a,b,length);
for(int i=0;i<length;i++)
cout<<*(b+i)<<" ";
cout<<endl;
delete[] b;
return 0;
}