目录
方法一:递归法
/** 递归法 求阶乘和
*
*/
long Factorial_sum_way1(int m)
{
if(m==1)
return 1;
else return Factorial_way1(m)+Factorial_sum_way1(m-1);
}方法二:循环法
/** 循环法 求阶乘和
*
*/
long Factorial_sum_way2(int m)
{
long sum=0;
int i=1;
for(i=1;i<=m;i++)
sum+=Factorial_way2(i);
//sum+=Factorial_way1(i);
return sum;
}
fun.c文件
#include "fun.h"
/** 递归法 求阶乘
*
*/
long Factorial_way1(int m)
{
if(m==1)
return 1;
else
{
return m*Factorial_way1(m-1);
}
}
/** 递归法 求阶乘和
*
*/
long Factorial_sum_way1(int m)
{
if(m==1)
return 1;
else return Factorial_way1(m)+Factorial_sum_way1(m-1);
}
/** 循环法 求阶乘
*
*/
long Factorial_way2(int m)
{
long sum=1;
int i;
for(i=1;i<=m;i++)
sum*=i;
return sum;
}
/** 循环法 求阶乘和
*
*/
long Factorial_sum_way2(int m)
{
long sum=0;
int i=1;
for(i=1;i<=m;i++)
sum+=Factorial_way2(i);
//sum+=Factorial_way1(i);
return sum;
}
fun.h文件
#include "stdio.h"
long Factorial_way1(int m);
long Factorial_sum_way1(int m);
long Factorial_way2(int m);
long Factorial_sum_way2(int m);
main.c文件
#include "stdio.h"
#include "stdlib.h"
#include "fun.h"
void main()
{
printf("%d\n",Factorial_sum_way1(6));
printf("%d\n",Factorial_sum_way2(6));
}
版权声明:本文为qq_40893012原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。