编程计算1!+2!+3!+…+n!,n为正整数,从键盘键入
遇到的问题:在外层循环中没有使fact每次都置为1;
#includedouble factorail(int n){ //求阶乘和 int i=1,j=1; double fact=1,sum=0; for(i=1;i<=n;i++){ fact=1; //从1开始× for(j=1;j<=i;j++){ fact*=j; //求各个阶乘 } sum+=fact; //求和 } return sum; } int main(void){ double sum; int n; printf("please enter a positive integer:"); scanf("%d",&n); sum=factorail(n); printf("1!+2!+3!+...+n!=%fn",sum); return 0; }



