[求助]高精度乘法
int a,i,up,tmp,max ;
ans[0]=1 ;
up=0 ;
max=1 ;
for(a=2;a<=n;a++)
{
for(i=0;i<max;i++)
{
/*高精度乘法*/
tmp=ans[i]*a+up ;
ans[i]=tmp%10 ;
up=tmp/10 ;
}
while(up)
{
ans[i++]=up%10 ;
up/=10 ;
}
max=i ;
/*新的最高位*/
}
红色部分
能不能给详细解释下啊 有点迷惑! 如果进位为100 或着以上就不明白了