哪错了,求助
  • 板块灌水区
  • 楼主MH_SLC
  • 当前回复4
  • 已保存回复4
  • 发布时间2021/11/26 13:08
  • 上次更新2023/11/3 23:33:46
查看原帖
哪错了,求助
352536
MH_SLC楼主2021/11/26 13:08

一道高精度加法,不知道哪里错了

#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int main()
{
	//freopen("文件名","r",stdin);
	//freopen("文件名","w",stdout);
	char a1[100],b1[100];
	int a[100],b[100],c[100],lena,lenb,lenc,i,x;
	memset(a,0,sizeof(a));		//把a数组清零 sizeof求宽度 
	memset(b,0,sizeof(b));
	memset(c,0,sizeof(c));
	gets(a1);		 
	gets(b1);		//字符串输入gets 
	lena=strlen(a1);
	lenb=strlen(b1);
	for(i=0;i<=lena-1;i++) a[lena-i]=a1[i]-48;
	for(i=0;i<=lenb-1;i++) a[lenb-i]=b1[i]-48;
	lenc=1;
	x=0;
	while(lenc<=lena || lenc<=lenb)
	{
		c[lenc]=a[lenc]+b[lenc]+x;
		x=c[lenc]/10;
		c[lenc]%=10;
		lenc++;
	}
	c[lenc]=x;
	if(c[lenc]==0)
		lenc--;
	for(i=lenc;i>=1;i--)
		cout<<c[i];
	cout<<endl;
	//fclose(stdin);
	//fclose(stdout);
	return 0;
}
2021/11/26 13:08
加载中...