/*
大整数加法
*/
#include <iostream>
#include <cstring>
#include <cstdio>
#define maxn 1000
using namespace std;
int main()
{
char s1[maxn], s2[maxn];
int a1[maxn], a2[maxn];
int i, c = 0, temp, k;
cin >> s1 >> s2;//把输入的数先放入到字符串里
memset(a1, 0, sizeof(a1));//整型数组清零
memset(a2, 0, sizeof(a2));
for(i = 0; i < strlen(s1); i++)//倒叙把每一位放入整型数组中
a1[i] = s1[strlen(s1)-1-i] - '0';
for(i = 0; i < strlen(s2); i++)
a2[i] = s2[strlen(s2)-1-i] - '0';
//逐位进行相加
for(i = 0; i < maxn; i++)
{
temp = a1[i] + a2[i] + c;
a1[i] = temp % 10;
c = temp / 10;
}
//去掉前导零
for(i = maxn - 1; i >= 0; i--)
if(a1[i]) break;
//输出结果
for(k = i; k >= 0; k--)
printf("%d",a1[k]);
printf("\n");
return 0;
}
大整数加法
最新推荐文章于 2024-02-09 14:57:27 发布