c语言,计算1!-2!+3!-4!+5!+……要求自定义函数实现,在线等

2024-12-04 23:57:45
推荐回答(3个)
回答1:

#include"stdio.h"
int fun1(int x){
    if (x<=1) return 1;
    return x*fun1(x-1);
}
 
int fun2(int n){
    int i,x=0;
    for(i=1;i<=n;i++)
        if (i%2==1) 
            x+=fun1(i);
        else
            x-=fun1(i);
    return x;
}
 
int main(){
    int n=5;
    printf("请输入项数n\n");
    scanf("%d",&n);
    printf("结果是:%d\n",fun2(n));
}

回答2:

#include 
int fun1(int x){
if (x<=1) return 1;
return x*fun1(x-1);
}

int fun2(int n){
int i,x=0;
for(i=1;i<=n;i++)
if (i%2==1) 
x+=fun1(i);
else
x-=fun1(i);
return x;
}

int main(){
int n=5;
printf("请输入项数n\n");
scanf("%d",&n);
printf("结果是:%d\n",fun2(n));
}

回答3:

输入一个正整数n,输出1!-2!+3!-4!+5!.......+n! #include int main(void){ int n; int result = 0; int i, j; int temp = 1; int flag; printf("please input n:\n"); scanf("%d", &n); for (i = 1; i < (n + 1); i++) { temp = 1; for (j = 1; j < (i + 1); j++) { temp *= j; } if (i % 2 == 1) flag = 1; else flag = -1; result += (flag * temp); } printf("The result is %d\n", result); return (0);}