C语言 求S=1!+2!+3!+4!+5!并输出结果

详细过程,谢谢

#include <stdio.h>
#define N 5  //定义符号常量
//求出每一项阶乘值的函数
int fact(int n)
{
    int i;
    int s;
    for(i=s=1;i<=n;i++)
        s*=i;   //从1开始循环累加相乘
    return s;
}
 
int main()
{
    int s;
    int i;
    for(i=1,s=0;i<=N;i++)
        s+=fact(i);     //从第1项开始循环累加每一项的阶乘值
    printf("1!+2!+3!+……+5!=%d\n",s);
    return 0;
}

运行结果:

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-01-10
#include<stdio.h>int main(){ int i,j, a, sum=0;for(i=1;i<=5;i++){ a=1; for(j=1;j<=i;j++) { a*=j; } sum+=a;}printf("%d\n",sum); return 0;} 这个绝对正确
第2个回答  2014-01-10
#include<stdio.h>int main(){ int i,j,a, s=0,a=1;for(i=1;i<=5;i++){for(j=1;j<=i;j++){a*=j;}sum+=a;printf("%d\n",sum); return 0;}
第3个回答  2014-01-10
main(){int s; s=q(1)+q(2)+q(3)+q(4)+q(5)printf("%d",s);}q(j){int i;int sum=1;for(i=1,i<j+1,i++) { sum=sum*i ;}return(sum);}
第4个回答  2014-01-10
以人格保证这个没错

#include<stdio.h>

int main()
{
int s;
int i,j;

s=0;
j=1;
for(i=1;i<=5;i++)
{
j=j*i;
s=s+j;
}
printf("%d\n",s);

return 0;
}
相似回答