我如何在'for'语句中使用阶乘?

时间:2019-03-25 14:28:01

标签: c factorial

我正在尝试使用两个阶乘,以便可以再次使用它们来查找另一个值。例如fact1(2n)!,而fact2(2n -1)!,我想在以下

中使用它们
(fx = (pow(x,(4*n+1))/((4*n+1)*fact1)) - (pow(x, (4*n -1)))/((4*n -1)*fact2)) 

,并使其fxn的增加而添加到其自身上,因此我将它们全部放在一个for语句下,但是当我打印数字时,甚至连析因数都出现了出了错,我想知道哪里出了错,我还没有完成编码,但是甚至在那之前发现它是错的。

#include <stdio.h>

int main()
{
    int c, b, n, fact1 = 1, fact2 = 1;
    float fx, fx1 = 0, erfc;
    float x;

    printf("enter the value for x\n");
    scanf("%f", &x);

    for (n = 1; n <= 5; n++)
    {
        for (c = 1; c <= (2 * n); c++)
            fact1 = fact1 * c;

        for (c = 1; c <= (2 * n - 1); c++)
            fact2 = fact2 * c;
        fx = (pow(x, (4 * n + 1)) / ((4 * n + 1) * fact1)) - (pow(x, (4 * n - 1))) / ((4 * n - 1) * fact2);
        fx1 = fx1 + fx;
    }

    printf("factorial of  = %d\n", fact1);
    printf("factorial of  = %d\n", fact2);

    return 0;
}

0 个答案:

没有答案