我们经常会使用C语言进行各种数学运算,那么如何利用C语言求1到100的阶乘和呢?下面小编给大家演示一下。
Dev C++
首先打开Dev C++软件,新建C语言控制台项目,如下图所示
然后在main.c文件中输入计算阶乘的逻辑代码,如下图所示
接下来我们编译写好的C语言文件,如下图所示
最后执行C语言文件,我们就可以得到1到100的阶乘之和了,如下图所示
C语言-阶乘之和
①求阶乘之和s
s=1! 2! ··· k! (1<=k<=n)
~
②程序
#include< stdio.h>
/*定义函数*/
long f(int n)
{
int i ;
long E ;
E=1;
for(i=1;i<=n;i )E=E*i;
return E;
}
/*主函数*/
main()
{
long s;
int k,n;
scanf("%d",&n);
s=0;
for (k=1;k<=n;k )s=s f(k);
printf("%ld\n",s);
}
~
③解释
#include< stdio.h>
long f(int n)
/*没试过把f(n)写成f(i)*/
{
int i ;
long E ;
/*此处的E表示(k-1)!,数字可能很大,定义为长整形long,
没试过能不能直接定义为int*/
E=1;
/*E初始值必须从1开始,不能从0开始,不然E=E*i横为1*/
for(i=1;i<=n;i )E=E*i;
return E;
}
/*主函数*/
main()
{
long s;
int k,n;
scanf("%d",&n);
s=0;
for (k=1;k<=n;k )s=s f(k);
/*如果s的初始值定为1,那么k就要从0开始了,连带把定义函数的i也改为从0开始*/
printf("%ld\n",s);
}