高精度求助
  • 板块学术版
  • 楼主theb0t
  • 当前回复1
  • 已保存回复1
  • 发布时间2023/11/28 09:59
  • 上次更新2023/11/28 15:27:33
查看原帖
高精度求助
997236
theb0t楼主2023/11/28 09:59

高精度减法求助

#include <cstdio>
#include <cstring>
char s1[1005],s2[1005];
int a[1005],b[1005],c[1005];
int main()
{
	scanf("%s",s1);
	scanf("%s",s2);
	int l1=strlen(s1);
	int l2=strlen(s2);
	for(int i=0;i<l1;i++)
		a[i]=s1[l1-i-1]-'0';
	for(int i=0;i<l2;i++)
		b[i]=s2[l2-i-1]='0';
	int carry=0;
	int l3=l1;
	for(int i=0;i<l3;i++)
	{
		int t=a[i]-b[i]+carry;
		if(t<0) 
		{
			carry=-1;
			c[i]=t+10;
		}
		else 
		{
			carry=0;
			c[i]=t;
		}
	}
	while(l3>1&&c[l3-1]==0) l3--;
	for(int i=l3-1;i>=0;i--) printf("%d",c[i]);
	return 0;
}

2023/11/28 09:59
加载中...