数组第一个数被冲掉,什么情况?
void calculate2()
{
char x[8],y[8],ans[8];
int i=0,j=0,h[8]={0};
printf("输入第一个补码(限8位):");
scanf("%s",x);
printf("输入第二个补码(限8位):");
scanf("%s",y);
for(i=0;i<8;i++)
{
if(x[i]=='0'&&y[i]=='0')
ans[i]='0';
else if(x[i]=='0'&&y[i]=='1')
ans[i]='1';
else if(x[i]=='1'&&y[i]=='0')
ans[i]='1';
else if(x[i]=='1'&&y[i]=='1')
{
ans[i]='0';
h[i]=1;
}
}
for(i=7;i>=0;--i)
{
if(h[i]=='0');
else if(h[i]==1)
{
if(i=0)continue;
for(j=i-1;j>=0;--j)
{
if(ans[j]=='0')
{
ans[j]='1';
break;
}else{
ans[j]='0';
}
}
}
}
printf("加法运算后的结果为:");
for(i=0;i<8;++i)
printf("%c",ans[i]);
printf("\n");
}