求sin的:参考下
#include
void main()
{
double x,a,b,sum=0;
printf("请输入x的弧度值:\n");
scanf("%lf",&x);
int i,j,count=0;
for(i=1;;i+=2)
{
count++;
a=b=1;
for(j=1;j<=i;j++)
{
a*=x;
b*=(double)j;
}
if(a/b<0.0000001) break;
else
{
if(count%2==0)
sum-=a/b;
else sum+=a/b;
}
}
printf("%lf\n",sum);
}
只能改公式了,提高公式的精度
这玩意儿不能硬来的,要先用诱导公式把x的绝对值搞小一点,否则一定会出问题。
帮你更正一下:
int
main()
{
const
double
pi=3.14;
//定义pi的值
double
a;
a=sin(45*pi/180);
//角度转化为弧度
printf("%f",a);
//printf的正确格式
}