用C语言编程计算1!+2!+....n!的前10项之和

如题所述

第1个回答  推荐于2018-04-19
思路:写一个函数计算阶乘,在main里面循环计算到第10个加在一起输出即可
注意点:数据类型
源代码:
#include <stdio.h>
#include <stdlib.h>

long factorial(int n)
{
int i;
long f;

f = 1L;
for (i = 1; i <= n; i++)
f *= i;
return f;
}

int main()
{
int i;
long sum;

sum = 0L;
for (i = 1; i <= 10; i++)
sum += factorial(i);

printf("1! + 2! + .. + 10! = %ld\n", sum );
return 0;
}

运行结果:
$ ./test
1! + 2! + .. + 10! = 4037913
希望对你有所帮助;)本回答被网友采纳
第2个回答  2011-03-17
main()
{
long sum,k;
int i,j;
sum=0;
for(i=1;i<=10;i++)
{
for(j=1,k=1;j<=i;j++)
{ k*=j; }
sum+=k;
}
printf("%ld\n",sum);
}本回答被提问者采纳
第3个回答  2011-03-17
int sum=0;

for ( int i=1; i<=10; i++)
{
for( int j=1; j<=i; j++ )
{
sum+=j;
}
}
printf("%d\n", sum );
第4个回答  2011-03-17
//只写函数
double sum(int n)
{
if (n < 0 || n > 49)
return -1;
double fact[50];
int i;
fact[0] = 1;
for(i = 1; i < 50; i ++)
fact[i] = fact[i-1]*(i+1);
double sum = 0;
for (i = 0; i < n; i ++)
sum += fact[i];
return sum;
}