请使用函数的递归调用编写求阶乘的函数,并计算1!+2!+3!+4!+5!

2024-11-10 15:53:29
推荐回答(2个)
回答1:

include "stdio.h"

int fac(int k)
{
if(k==1) return 1;
else return k*fac(k-1);
}/*递归求阶乘*/
void main()
{
int i=1;
for(i;i=5;i++)

fac(i);/*调用函数计算阶乘*/
sum+=fac(i);/*计算从1的阶乘到5的阶乘之和*/

printf("sum=%d",sum);/*输出结果*/
}

for循环实现的就是计算从1的阶乘到5的阶乘的和,自定义的函数实现的就是计算阶乘,那是一个递归算法的运用

手打很辛苦的,希望能帮到你,采纳吧

回答2:

#include
int fact(int);
main()
{
int i, sum=0;
for(i=1;i<6;i++)
sum = sum + fact(i);
printf("%d",sum);
}

int fact(int n)
{
if(n<2) return 1;
else return n*fact(n-1);
}