大数运算(大数加法and大数乘法)
发布时间:2020-12-26 08:11:18 所属栏目:大数据 来源:网络整理
导读:大数模板 -- 万进制 为基础的 模板 #include algorithm#include stdlib.h#include cstring#include iostream#include stdio.h#define ll long long#define MAXN 10000#define DELD 4using namespace std;int a[MAXN];int b[MAXN];struct Bignum{ int len; in
#include<stdio.h>
#include<string.h>
char a[100000];
char b[100000];
int c[1000000];
int x[100000];
int y[100000];
int z[100000];
int main()
{
int T,k,l,p,len1,len2;
while(~scanf("%d",&T))
{
p=1;
while(T--)
{
i=0,j=0;
memset(a,sizeof(a));
memset(b,sizeof(b));
memset(c,sizeof(c));
memset(x,sizeof(x));
memset(y,sizeof(y));
memset(z,sizeof(z));
scanf("%s",a);
len1=strlen(a);
scanf("%s",b);
len2=strlen(b);
j=len1>len2? len1:len2;
for(k=0,len1--;len1>=0;len1--) // a,b 倒 过来
x[k++]=a[len1]-'0';
for(l=0,len2--;len2>=0;len2--)
y[l++]=b[len2]-'0';
// 计算
// for(l=0;l<k;l++)
// printf("%d",x[l]);
for(i=0,l=0;i<j+1;i++) // 运算x+y
{
k=x[i]+y[i];
c[i]=(k+l)%10;
l=(k+l)/10;
}
printf("Case %d:n",p);
printf("%s + %s = ",a,b);
for(i--,l=0;i>=0;i--,l++)
z[l]=c[i];
for(i=0;i<l;i++)
{
if(i==0&&z[i]==0)
i++;
printf("%d",z[i]);
}
// for(i--;i>=0;i--)
// {
// if(c[i]==0)
// i--;
// printf("%d",c[i]);
// }
if(T==0)
printf("n");
else
printf("nn");
p++;
}
}
return 0;
}
(编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |


