大数处理:大数乘小数
#include <iostream> #include <cstdio> #include <string.h> using namespace std; int a[10010]; int main() { int i,m,t,j,c; while (cin>>m) { memset(a,sizeof(a)); a[0]=1; t=0; for (i = 1; i<=m; i++) { c=0; for (j = 0; j<=t; j++) { a[j]=a[j]*i+c; c=a[j]/10000; a[j]=a[j]%10000; } if (c!=0) { t++; a[t]=c; } } cout<<a[t]; for (i = t-1; i>=0; i--) printf("%04d",a[i]); cout<<endl; } return 0; }