题意
求出一个数的负二进制数。
思路
这和正二进制数的求法差不多,每次除以-2取余倒序输出就好了。
代码
#include<cstdio>
#include<algorithm>
int n,a[101],k;
int main()
{
scanf("%d",&n);
do
{
k++;
a[k]=abs(n%2);//求余数
n=-(n-a[k])/2;//相当于n/-2
}
while(n!=0);
for (int i=k;i>=1;i--)//倒序输出
printf("%d",a[i]);
}