题目描述
将十进制整数转换成二进制数
输入
输入数据中含有不多于50个整数n(-216<n<216)。
输出
对于每个n,输出n值,然后输出“–>”,再然后输出二进制数。每个整数n的输出,独立占一行。
样例输入
2
0
-12
1
样例输出
2–>10
0–>0
-12–>-1100
1–>1
例一
#include<bits/stdc++.h>
using namespace std;
int main()
{
long long n,s,i;
while(cin>>n)
{
s=0;
i=0;
cout<<n;
while(n!=0)
{
s=s+n%2*pow(10,i);
n=n/2;
i++;
}
cout<<"-->"<<s<<endl;
}
return 0;
}
例二
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,i,l;
bool a[100];
while(cin>>n)
{
i=0;
cout<<n<<"-->";
if(n<0)
{
n=-n;
cout<<"-";
}
if(n==0)
cout<<n;
while(n!=0)
{
a[i]=n%2;
n=n/2;
i++;
}
l=i;
for(int m=0;m<i;m++)
{
cout<<a[--l];
}
cout<<endl;
}
return 0;
}