c语言问题(关于函数调用的)
编写求n的阶乘的函数,用此函数求多项式之和:1/1!+1/2!+1/3!+…1/n!,直到最后一项小于10的负5次方。
这是我自己编的:
#include<stdio.h>
float f(int n)
{
float y;
if(n==0||n==1) y=1;
else y=f(n-1)*n;
return(y);
}
void main()
{
int n;
float s,m;
m=10.0;
for(n=1,s=0;m>=10^(-5);n++)
{
m=1/f(n);
s=m+s;
}
printf("The answer is %d\n",s);
}
但为什么显示Floating point error: Overflow. >Abnormal program termination。请问大家哪里出错了?