题目描述
大家都知道,数据在计算机里中存储是以二进制的形式存储的。
有一天,小明学了 C
语言之后,他想知道一个类型为 unsigned int 类型的数字,存储在计算机中的二进制串是什么样子的。
你能帮帮小明吗?
并且,小明不想要二进制串中前面的没有意义的 0
串,即要去掉前导 0
。
输入格式
输入包含多组测试数据。
每组数据占一行,包含一个整数。
输出格式
每组数据输出一行,一个二进制串表示结果。
数据范围
输入整数范围 [0,4294967295]
。
每个输入最多包含 100
组数据。
样例
输入样例:
23
535
2624
56275
989835
输出样例:
10111
1000010111
101001000000
1101101111010011
11110001101010001011
算法
#include<iostream>
using namespace std;
int main()
{
long long x;
while(cin>>x)
{ int a[101];
long long i=0;
if(x==0){
puts("0");
continue;
}
while(x>0)
{
a[i++]=x%2;
x=x/2;
}
for(int j=i-1;j>=0;j--)
cout<<a[j];
cout<<endl;
}
}
算法2
(暴力枚举) O(n2)
blablabla
时间复杂度
参考文献
C++ 代码
blablabla