大数加法,要用到字符串去存数字,其实也蛮简单的,因为先对齐位置,再进行加减就好了,其中存好每一次的进位 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; }