转载自(https://zhidao.baidu.com/question/1367998053218129659.html)
求二进制串的补码
利用二进制的特征:0000取反加1为10000
#include<stdio.h>
#include<string.h>
int main()
{
char a[16];
int i,j,len,k;
gets(a);
len=strlen(a);
printf("%d\n",len);
for(i=len-1;a[i]!='1';i--);
for(j=i-1;j>=0;j--)
{
if(a[j]=='1') a[j]='0';
else a[j]='1';
}
printf("\n2's compliment = %s",a);
return 0;
}```