C语言编程求阶乘1到10的和

来源:百度知道 编辑:UC知道 时间:2024/05/27 07:43:20
编程求1!+2!+3!+…………+10!
这个怎么编程啊?

我只看了一楼的。赞成!
这个问题的关键是那个fun函数。那应该是迭代吧。希望楼主要理解,而不是看看答案就好了。

扩展到n。
long func(int n){

if(n<=0)
return 0;
if(n==1)
return 1;

long temp=1; //暂存n!
long result=1; //结果
for(int i=2;i<=n;i++)
{
temp *= i; //当前值为i!
result += temp; //result当前值为 1!+2!+……+i!
}
return result;
}

#include "stdio.h"
#define t 10
main()
{int i;
long int n=0,s=1;
for(i=1;i<t;i++)
{s=s*i;
printf("%d!=%-6ld ",i,s);
n+=s;
printf("%ld\n",n);
}
puts("");
}

#include <stdio.h>

/* 通过递归计算一个数的阶乘 */

int factorial(int num)
{
if (num==1)
return 1;
else
return (num * factorial(num - 1));
}

int main()
{
int i;
long sum = 0;

for (i = 1; i < 11; ++i)
sum += factorial(i);