解决方案 »

  1.   

    不在循环体内赋值的话,每次内循环的sum都是上次内循环后的sum,而不是1,肯定不对的啊!
      

  2.   

    里面的那个循环算的是i的阶乘,这个阶乘是从1开始乘,1*2*3*4*...*i,在第一部只有sum为1才能得到正确的值,即1*1=1,这个1就是上面1*2*3*4*...*i的第一个1.
    而外面的大的循环,则是计算num=num+sum;为主,算的是所有阶乘的和,sum是和里面那个小循环一起计算单个阶乘的