C语言编程题,求1+2!+3!+...+20!的和,怎么做?

2025-01-22 21:49:21
推荐回答(5个)
回答1:

以下是用C语言编程求出1!+2!+3!+……+20!的值示例代码:  

#include   

int main()  

{  

int i,j;  

long sum,k;  

sum=0;  

for(i=1;i<=20;i++)  

{k=1;  

for(j=1;j<=i;j++)  

{  

k=k*j;  

}  

sum=sum+k;  

}  

printf("1+2!+3!+…+20!=%d",sum);  

}

扩展资料:

C语言是面向过程的编程语言,用户只需要关注所被解决问题的本身,而不需要花费过多的精力去了解相关硬件,且针对不同的硬件环境,在用C语言实现相同功能时的代码基本一致,不需或仅需进行少量改动便可完成移植。

这就意味着,对于一台计算机编写的C程序可以在另一台计算机上轻松地运行,从而极大的减少了程序移植的工作强度。

C语言既有高级语言的特点,又具有汇编语言的特点;既是一个成功的系统设计语言,又是一个实用的程序设计语言;既能用来编写不依赖计算机硬件的应用程序,又能用来编写各种系统程序;是一种受欢迎、应用广泛的程序设计语言。

参考资料来源:百度百科-C语言

回答2:

# include 
int main ()
{
    int i;
    long long sum = 0, jc=1;
    for (i = 1; i <= 20; ++i){
        jc *= i;
        sum += jc;
    }
    printf ("%lld\n", sum);
return 0;
}

回答3:

这个简单的,看你要求复杂性是多少。
最简单的是,写一个函数,求阶乘的。
然后暴力算出来

回答4:

C语言经典例子之求1+2!+3!+...+20!的和

回答5:

#include

unsigned long long fun(int n);

int main()
{
int i;
unsigned long long s=0;

for(i=1;i<=20;i++)
s+=fun(i);
printf("%llu",s);
return 0
}
unsigned long long fun(int n)
{
if(n==0||n==1)
return 1;
else
return n*fun(n-1);
}