while(fabs(t)>1e-6);
应该是这里不对,是小于号,绝对值小于10-6
应该是这里不对,是小于号,绝对值小于10-6
#include<stdio.h> #include<math.h> #define PI 3.1415926 void main() { float a,x,y=1,s=1,p=1,t; double m=1,n=0; //将这里改成double就行了 printf("please input a float number"); scanf("%f",&a); x=a*PI/180.0; do { y=y*x*x; n=n+2; m=m*n*(n-1); s=-s; t=s*y/m; p=p+s*y/m; } while(fabs(t)>1e-6); printf("泰勒近似植为%f\n",p); printf("计算器结果为%f\n",cos(x)); }