C语言!!!!求输入一个正整数n,求1!-2!+3!-4!+5!.......+n!的程序。

最好是for循环!!

其实用递归算更简单,再给你一个吧

#include <stdio.h>
//由于标准math.h中没有求阶乘函数,所以自己写一个吧
int jiecheng(int n)
{
if(n<=1) return n;//控制递归跳出
if(n!=1)
n*=jiecheng(n-1);//递归
return n;
}
int main()
{
int n,sum=0;
printf("请输入一个整数");
scanf("%d",&n);
for(int i=1;i<=n;i++)
sum+=jiecheng(i);
printf("%d\n",sum);
return 0;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-10-25
#include <stdio.h>

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);
}本回答被提问者采纳