刚开始看到这个题目的时候,无从下手,后来查了大数运算的原理,是使用数组来模仿大数的运算,可以做到大数的加,减,乘运算。
#define N 9999
int a[N * 5] = { 1 };
int main(){
int num = N; int len = 1,temp=0,i;
for (; num;num--){
for (i = 0; i < len; i++){
a[i] = a[i] * num + temp;
temp = a[i]/10000;
a[i] = a[i] % 10000;
}
if (temp){
a[len++] = temp;
temp = 0;
}
}
for (; len;) cout << a[--len];
}