回复 30楼 azzbcc
晕了..
模模糊糊好像明白一点点,
a[0]是保存进了几位
tmp数组保存结果..
下面这两个循环的关系我还没搞明白..
i,j一顿变化把我弄的有点晕了
数组还是不太好掌握啊

for (i = a[0], j = 0;i > 0;--i) /*a[0]为位数*/ { result += a[i] * (n+1); /*从最低位向最高位循环,依次与 n+1(也就是阶乘的数字)相乘 */ tmp[j++] = result % 10; /*临时数组中进位,从低到高保存结果*/ result /= 10; } while (result) /*真正进位的循环*/ { /* 将最高位保存到tmp中*/ tmp[j++] = result % 10; result /= 10; }
[ 本帖最后由 Ryker 于 2013-4-28 14:53 编辑 ]