是泰勒级数吧。
sinx:
#include
#include
int main()
{ double x,s,a;//为了提高精度,我把它们定义成双精度的。
int i;
scanf("%lf",&x);//注意x为弧度,输入的值过大没意义只要在-2*∏~2*∏即可。因为C语言的运算精确度有限。例如输入1.7,输出0.99166465
a=x;
s=a;
for(i=1;;i+=2)
{
a*=x*x*(-1)/((i+1)*(i+2));
if(fabs(a)<1e-7) break;
s+=a;
}
printf("%.8f\n",s);
return 0;
} //用泰勒展开式求sinx
http://z.baidu.com/question/146522670.html
cosx:
#include
#include
void main()
{
double x,c,a;
int i;
scanf("%lf",&x);
a=1;
c=a;
for(i=1;;i+=2)
{
a*=x*x*(-1)/(i*(i+1));/*相邻两项的比值*/
if(fabs(a)<1e-7)
break;
c+=a;
}
printf("cos(%g)=%.8f\n",x,c);
}
//注意x为弧度
http://z.baidu.com/question/147417501.html
还有啥要求HI我。