求0的输出
查看原帖
求0的输出
237042
edison000楼主2020/11/5 10:08
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
char biga[10010],bigb[10010];
int a[10010],b[10010];
void pd(){
	if(a[0]<b[0]||(a[0]==b[0]&&biga<bigb)){
	swap(a,b);
	cout<<"-";
	}
}
void sub(int *a,int *b){
	for(int i=1;i<=a[0];i++){
		if(a[i]<b[i]){
			a[i]+=10;
			a[i+1]--;
		}
		a[i]-=b[i];
	}
	for(;a[0]>1&&a[a[0]]==0;a[0]--);
} 
int main(){
	scanf("%s%s",biga,bigb);
	a[0]=strlen(biga);
	b[0]=strlen(bigb);
	for(int i=1;i<=a[0];i++){
		a[i]=biga[a[0]-i]-'0';
	}
	for(int i=1;i<=b[0];i++){
		b[i]=bigb[b[0]-i]-'0';
	}
	pd();
	sub(a,b);
	for(int i=a[0];i>=1;i--) printf("%d",a[i]);
	return 0;
}

1 1输出-0
太菜不会改, 麻烦帮忙,谢谢

2020/11/5 10:08
加载中...