大数加法,要用到字符串去存数字,其实也蛮简单的,因为先对齐位置,再进行加减就好了,其中存好每一次的进位 carry,每一次进行相加的有 i 个 a

#include<iostream>
#include<cmath>

using namespace std;

int main(){
    int a, n;
    while(cin >> a >> n){
        string sum = "";
        int carry = 0;
        for(int i = n; i >= 1; i --){
            sum = to_string((i * a  + carry) % 10) + sum;
            carry = (i * a  + carry) / 10;
        }
        cout << sum << endl;
    }
    return 0;
}