扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
如果只是需要值,那么调用math中的sin和cos函数即可.
成都创新互联公司主营金塔网站建设的网络公司,主营网站建设方案,成都app开发,金塔h5小程序设计搭建,金塔网站营销推广欢迎金塔等地区企业咨询
参数为弧度, 如果要使用的参数是角度,需要自行转换一下.
如果想自己写,可以参考泰勒展开, 计算近似值.一般计算到最后一项小于1e-6即可.
cosx函数
#includestdio.h
#includemath.h
int main()
{
int n=0;
double x,sum=0;
printf("please enter x:");
scanf("%lf",x);//
double cosx(double x,int n);
do
{
sum=sum+cosx(x,n);
n=n+1;
}
while(fabs(cosx(x,n))1e-8);
printf("%9.8f\n",sum);
return 0;
}
double cosx(double x,int n)
{
double p,q;//
p=pow(x,2*n);
double fact(int n);//
q=fact(2*n);
if(n%2)
return(-p/q);
else
return(p/q);
}
double fact(int n)//
{
double ans=1; int i;
if(n=1)
return 1;
for(i=1;i=n; ++i)
ans*=i;
return ans;
}
cosx函数即反余弦函数
函数y=cosx(x∈[0,π])的反函数叫做反余弦函数,
记作y=arccosx(x∈[-1,1]).
头文件包含。math.h
cos
:余弦函数
函数原型:double
cos(double
x);
头文件:#includemath.h
是否是标准函数:是
函数功能:求x的余弦值,这里,x为弧度。
返回值:计算结果的双精度值。
例程如下:
求cosx。
#include
stdio.h
#include
math.h
int
main(void)
{
double
result;
double
x
=
M_PI;
result
=
cos(x);
printf("cos(PI)
is
%lf\n",
result);
return
0;
}
sin:正弦函数
函数原型:double
sin(double
x);
头文件:#includemath.h
是否是标准函数:是
函数功能:求x的正弦值,这里,x为弧度。
返回值:计算结果的双精度值。
例程如下:
求sinx。
#include
stdio.h
#include
math.h
int
main(void)
{
float
x;
x=M_PI/2;
printf("sin(PI/2)=%f",sin(x));
getchar();
return
0;
}
包含它的头文件是math.h
引用后就可以直接用了
库内部函数申明:1:double
sin(double
x);
2:double
cos(double
x);
/////////////////////////////////////////
//自己实现(
简单检验):
#includestdio.h
#includemath.h
void
main(void)
{
double
x1=35.77;
double
x2=65.44;
printf("sin(x1)=%f,sin(x2)=%f\n",sin(x1),sin(x2));
}
scanf时,float 用 %f ,double 用 %lf. 因为scanf不知道你传的是float还是double数的地址,你必须通过%f %lf来告诉它这一点。
printf时,float、double都用%f,无需区分,因为即使你传的是float,也会被编译器先自动转换为double再交给printf.
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流