#include <stdio.h>
float E(int M, float x);
float Fact(int M, float x);
float Fact1(int M);
int main()
{
float e, x;
int M;
scanf("%d %f", &M, &x);
e = E(M, x);
printf("%f", e);
return 0;
}
float E(int M, float x)
{
if (M == 1) return x + 1;
else return (Fact(M, x) / Fact1(M)) + E(M - 1, x);
}
float Fact(int M, float x)
{
if (M == 1) return x;
else return x*Fact(M - 1, x);
}
float Fact1(int M)
{
if (M == 1) return 1;
else return M*Fact1(M - 1);
}
我这里用了三个函数,第一个是计算E^x的,第二个是计算x^n的,第三个是计算n!的,三个都用了递归的方法,你可以尽情地感受下,什么是递归思想
温馨提示:内容为网友见解,仅供参考