C语言如何用递归算法求1!+2!+3!+...n!

如题所述

第1个回答  2022-12-11
#include\x0d\x0afloat fun(int n)\x0d\x0a{\x0d\x0aif(n==1) return 1;//如果n=1则直接返回1\x0d\x0areturn n*fun(n-1);//否则返回n*fun(n-1),以此计算n的阶乘,这条语句就是递归体\x0d\x0a}\x0d\x0avoid main()\x0d\x0a{\x0d\x0a int i;\x0d\x0a float sum=0;\x0d\x0a for(i=1;i<=n;i++){\x0d\x0a sum+=fun(i); //循环调用,用sum累计\x0d\x0a }\x0d\x0a printf("sum=%.2f\n",sum);\x0d\x0a}
相似回答