思路就是输入的十进制数与2的各个次方想减知道找到相差最近的那个数,再逐个逐个相减
#include<iostream>
using namespace std;
void main()
{
cout<<"请输入你要转化的数值在1024以为的十进制"<<endl;
int n;
cin>>n;
for(int s=1;s<=1024;s=s*2)
{
int a;
a=n-s;
if(a<0)
{
s=s/2;
int x=n-s;
cout<<"1";
for(s=s/2;s>=1;s=s/2)
{
x=x-s;
if(x>=0)cout<<"1";
else{x=x+s;cout<<"0";}
}
}
}
}