求大神,C语言代码问题
自己设计的代码,检查了好久,不知哪个算法错了。不管我的X输入什么值,结果都是1#include<stdio.h>
double getPower(int x,int y)
{
if(y==0)
return 1;
return x*getPower(x,y-1);
}
double f(int x)
{
if(x==0)
return 1;
return x*f(x-1);
}
int main()
{
double n,x,L=0;
printf("请输入x的值");
scanf("%d",&x);
for(n=0;getPower(x,n)/f(n)>0.000001;n++)
L=L+getPower(x,n)/f(n);
printf("e`x=1+x/1!+x`2/2!+...+x`n/n!=%f/n",L);
return 0;
}
要求最后一项小于0.000001