大数加法


#include<iostream>
#include<string.h>

using namespace std;

const int M = 150;


int main() {
  int i, j;
  string a, b;
  int A[M] = { 0 }, B[M] = { 0 }, C[M] = { 0 };

  cin >> a;
  int size_a = a.length();
  j = 0;
  for (i = size_a - 1;i >= 0;i--) {
    A[j++] = a[i] - '0';
  }

  cin >> b;
  int size_b = b.length();
  j = 0;
  for (i = size_b - 1;i >= 0;i--) {
    B[j++] = b[i] - '0';
  }
  int size = size_a > size_b ? size_a : size_b;
  for (i = 0,j=0;i <size;i++) {
    C[j] += A[i] + B[i];
    if (C[j] > 9) {
      C[j + 1] += C[j] / 10;
      C[j] %= 10;
    }
    j++;
  }
  if (C[j])
    cout << C[j];
  for (i = j - 1;i >= 0;i--)
    cout << C[i];
  cout << endl;
  return 0;
}

posted on 2020-07-14 22:01  Taurus20000519  阅读(85)  评论(0)    收藏  举报