表达式表示不太对。看看!
k 2k+1
(-1) x 5
-------------=E
(2k+1)! k=0
#include "stdio.h"
float pow(float x,int n);
long fact(int a);
main()
{
int k;
float x=0.1,sum=0;
for(k=0;k<6;k++)
sum+=(pow(-1,k)*pow(x,2k+1))/fact(2k+1)); /*错误就在这行,搞不明白了*/
printf("The sum is:%f",sum);
}
float pow(float x,int n)
{
if(n==0) return 1;
else return (x*pow(x,n-1));
}
long fact(int a)
{
if(a>0) return(a*fact(a-1));
else return 1;
}
是编写的错误。想不出怎么改了。表达式的问题吧。