1. 程式人生 > >5-17 求階乘序列前N項和 (15分)

5-17 求階乘序列前N項和 (15分)

本題要求編寫程式,計算序列 1!+2!+3!+⋯1! + 2! + 3! + \cdots1!+2!+3!+ 的前N項之和。

輸入格式:

輸入在一行中給出一個不超過12的正整數N。

輸出格式:

在一行中輸出整數結果。

輸入樣例:

5

輸出樣例:

153
#include<stdio.h>
#include<math.h>
double fact(int n);
int main(void)
{
int i,N;
double a,sum=0;
scanf("%d",&N);
for(i = 1;i <= N;i++){
a = fact(i);
sum =sum + a;
}
printf("%.0f",sum);
return 0;
}


double fact(int n)
{
int i;
double product = 1;
for(i = 1; i <= n; i++){
product = product * i;
}
return product;
}