文章
3
粉丝
220
获赞
6
访问
30.7k
//本题难点主要在处理对负二的取余上,如果负数除以-2,取余会得-1
//解决方法是比如(-3)/(-2)计算机得1.......-1,我们认为的将其变为2......1
//将余数变为正1
#include<stdio.h>
#include<string.h>
int main()
{
int n;
int fuer[105];
while(scanf("%d",&n)!=EOF )
{
if(n==0)
printf("0");
int k=0,temp=0;//负二进制数组的下标
while(n!=0)
{
temp=n%(-2);
n/=(-2);
if(temp==-1)
{
temp=1;
n++;
}
fuer[k++]=temp;
}
...
登录后发布评论
暂无评论,来抢沙发