读书人

用C兑现求阶乘之和(非递归实现)

发布时间: 2012-09-10 11:02:32 作者: rapoo

用C实现求阶乘之和(非递归实现)

这是是求阶乘和的非递归实现:

?

?

// methods1.c#include <stdio.h>long double Fn(int n);int main(void){    long double sum = 0;    int i, n;    i = n = 0;    printf("Please input a number: \n");    scanf("%d", &n);    if (n > 1000 )printf("ERROR!The number is too large!\nPlease try again!(0~1000)\n");    else if (n < 0)printf("ERROR!The number is invalid!\nPlease try again!(0~1000)\n");    else    {for (i = 0; i <= n; i++)    sum += Fn(i);printf("The %d factorial's sum is %Lf\n", n, sum);    }    return 0;}long double Fn(int n){    int i = 1;    long double temp = 1;    if (n == 0)return 1;    for (i = 1; i <= n; i++)        temp = temp * i;    return temp;    }

?
用C兑现求阶乘之和(非递归实现)

1 楼 deepfuture 2012-05-26 加油,不错

读书人网 >编程

热点推荐