1.
创新互联建站专注于叶集网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供叶集营销型网站建设,叶集网站制作、叶集网页设计、叶集网站官网定制、小程序定制开发服务,打造叶集网络公司原创品牌,更为您提供叶集网站排名全网营销落地服务。
C语言中要编写sin函数,实质上要利用sin的泰勒公式,然后根据泰勒公式,将其中的每一项进行分解,最后用循环,累加计算出最终结果
2.
下面用for循环实现sin的算法,程序代码如下:
#includestdio.h
#includemath.h
void
main()
{
int
i;
float
x,sum,a,b;
//sum代表和,a为分子,b为分母
char
s;
printf("please
input
x");
scanf("%f",x);
s=1;
sum=0;
a=x;
//分母赋初值
b=1;
//分子赋初值
for(i=1;a/b=1e-6;i++)
{
sum=sum+s*a/b;
//累加一项
a=a*x*x;
//求下一项分子
b=b*2*i*(2*i+1);
//求下一项分母
s*=-1;
}
printf("sum=%f\n",sum);
}
3.
关于上述程序的几点说明:上述程序的计算结果精确到小数点后六位;上述程序运用了sin的泰勒展开式
sin
x=x-x^3/3!+x^5/5!
......
,程序中将sin泰勒公式中的每一项拆成了分子,分母以及每一项前的符号这三项,以便于每一项的累加
C语言sin()用来计算参数x 的正玄值,然后将结果返回。返回-1 至1 之间的计算结果。
例子:
#include math.h
main(){
double answer = sin(0.5);
printf("sin(0.5) = %f\n", answer);
}
执行
sin(0.5) = 0.479426
C语言sin():
sin()原型:double sin(double x)
sin()角度与弧度:
π=180°
1°=π/180
1(rad)=180/π
角度转弧度:用角度乘以π/180
弧度转角度:用弧度乘以180/π,或者用rtod()函数
扩展资料:
与sin相似的acos函数
函数名: acos
功 能:计算并返回arccos(x)值、要求-1=X=1
函数与形参类型:
double acos(x)
double x;
程序例:
#include stdio.h
#include math.h int main(void)
{
double result;
double x = 0.5; result = acos(x);
printf("The arc cosine of %lf is %lf\n", x, result);
return 0;
}
参考资料:CSDN博客频道-C语言中sin和cos的用法
1.需要包含头文件#includemath.h
2.使用角度计算时需要先转换为弧度值
3.pi,获取pi的值,这里用到了acos,反余弦函数,值域是0-pi,取值范围是-1到1
Ps:反余弦没学过,百度上搜的
#include stdio.h
#include math.h
double toAngle(int);
//测试值
int angle = 30;
int main()
{
double p = sin ( toAngle( angle) );
printf(" sin : %d = %f" , angle ,p);
}
//将角度转为弧度
double toAngle(int angle)
{
//求pi,3.141593
double pi = acos(-1);
printf(" get pi : %f\n",pi);
return angle* pi/180;
}
包含头文件math.h,写成sin(x);的形式直接调用这个函数。其中x是double型弧度值。函数返回一个double值。如有double
x=3.1415926/180*30;,那么printf("sin30°
=
%f\n",sin(x));将输出sin30°
=
0.500000。
修改建议
您的回答内容不完整
知识型提问需要先直接对提问进行回复,开门见山,再对相关知识点进行延伸,如:加油哦!
你拒绝认证吧,这没有完善的必要了,学过三角函数的人都能看懂,看了10页C教科书的也都知道怎么写了。还要怎样“开门见山”,怎样“延伸”?难道还得解释sin是对边比斜边?
输入一个double类型的数,调用c标准库中的sin函数即可。
函数原型:double
sin(double
x);
功能:
函数用来求给定值的正弦值
头文件:#include
math.h
参数:给定的值(弧度)。
返回值:返回-1
至1
之间的计算结果。
示例:
#includestdio.h
#includemath.h
int main()
{
const double PI = 3.1415926;
double d;
scanf("%lf", d);
double result = sin(d*PI/180)+cos(d*PI/180);
printf("%f\n",result);
return 0;
}