c语言调用函数求解阶乘的和

题目描述:编写函数Fact,该函数用于计算并返回n的阶乘。在main函数中,输入一个正整数m,调用函数Fact求解并输出1! -2! +3! -4! +... +m!的值。

img

#include<stdio.h>
int fact(int n);
int main()
{
    int i,n;
    long sum=0;
    printf("输入n(n>0)\n");
    scanf("%d",&n);
    for(i=1;i<=n;i++)
    {
     
        sum+=fact(i)*((i%2==0)?-1:1);
    } 
    printf("sum=%ld\n",sum);
}
/*函数功能:用迭代法计算整型变量n的阶乘*/
int fact(int n)
{
    int i;
    long result=1;
    for(i=2;i<=n;i++)
    {
        result*=i;
    }
    return result;
}