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