62库

您现在的位置是:首页 > 前端开发 > JavaScript > 正文

JavaScript

c语言求正弦函数值,函数的正弦值

Admin2023-11-11JavaScript53

怎样用c语言编写一个程序用来输出正弦函数值

首先:程序应该这样改!

#include

#include

main()

{

double

n;

double

b,c;

scanf("%lf",n);

b=sin(n);

c=cos(n);

printf("%.2lf\n%.2lf",b,c);

return

0;

}

其次,这里的n是弧度值,你说的90度应该输入的是pi/2,而不是90,如果希望输入90的话,那就这样改!

#include

#include

main()

{

int

s;

double

n,b,c;

scanf("%d",s);

n=3.1415926*(s/180.0);

b=sin(n);

c=cos(n);

printf("%.2lf\n%.2lf",b,c);

return

0;

}

如何用C语言求正弦函数,要求精确到小数点后六位

/*泰勒公式求sin(x)*/

#include stdio.h

int main() {

double x,s1,e,s=0;

int n=1;

e=0.000001; /*误差上限位六位小数*/

printf("求sin(x)\n请输入x(弧度):");

scanf("%lf",x); 

s1=x;

do {

s+=s1; /*s1为中间变量*/

s1=-s1*x*x/(n+1)/(n+2); 

n+=2;

} while (fabs(s1)=e); /*fabs为对实数求绝对值的函数*/

printf("x=%lf\nsin(x)=%lf\n",x,s);

}

运行结果

C语言 求sin值

首先,你的测试输入和测试输出的数据是对应不上的,你写错信息了!

输入 3.1415026, 3 的时候,输出才是 -0.07522 。

好了,正确的参考代码如下:

#include stdio.h

double power(double x, int n); // 计算乘方的函数

double fact(int n);            //  计算阶乘的函数

int main(int argc, char const *argv[])

{

    double x, s;

    int n;

    int sign = 1; //正负号开关变量,初始状态为正

    printf("Please input a decimal number x , a postive int number n  :\n");

    scanf("%lf%d", x, n);

    for (int i = 0; i = n; i++)

    {

        s += sign * power(x, 2 * i + 1) / fact(2 * i + 1);

        sign = -sign;

    }

    printf("x = %g, n = %d, s = %.5lf \n", x, n, s);

    return 0;

}

//计算x^n

double power(double x, int n)

{

    double p = 1;

    //  这样的循环条件,很简洁。因为函数传入的是形参,也不会对main的变量造成影响。

    for (; n--;)

    {

        p *= x;

    }

    return p;

}

//  计算n!

double fact(int n)

{

    double f = 1;

    //  这样的循环条件,很简洁。因为函数传入的是形参,也不会对main的变量造成影响。

    for (; n;)

    {

        f *= n--;

    }

    return f;

}

测试截图:(分别测试了角度为 180度、90度、45度的弧度值)

输入和输出语句,你不想要这么多的提示信息的话,自己修改一下就可以了。

如有帮助,烦请点采纳,谢谢!

如何用C语言中专门的数学算法实现正弦,余弦函数的计算

头文件包含。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;

}

C语言求正弦函数值

sin(-a)=-sin(a)

cos(-a)=cos(a)

sin(2π-a)=cos(a)

cos(2π-a)=sin(a)

sin(2π+a)=cos(a)

cos(2π+a)=-sin(a)

sin(π-a)=sin(a)

cos(π-a)=-cos(a)

sin(π+a)=-sin(a)

cos(π+a)=-cos(a)

tgA=tanA=sinAcosA

2.两角和与差的三角函数

sin(a+b)=sin(a)cos(b)+cos(α)sin(b)

cos(a+b)=cos(a)cos(b)-sin(a)sin(b)

sin(a-b)=sin(a)cos(b)-cos(a)sin(b)

cos(a-b)=cos(a)cos(b)+sin(a)sin(b)

tan(a+b)=tan(a)+tan(b)1-tan(a)tan(b)

tan(a-b)=tan(a)-tan(b)1+tan(a)tan(b)

3.和差化积公式

sin(a)+sin(b)=2sin(a+b2)cos(a-b2)

sin(a)?sin(b)=2cos(a+b2)sin(a-b2)

cos(a)+cos(b)=2cos(a+b2)cos(a-b2)

cos(a)-cos(b)=-2sin(a+b2)sin(a-b2)

4.积化和差公式 (上面公式反过来就得到了)

sin(a)sin(b)=-12?[cos(a+b)-cos(a-b)]

cos(a)cos(b)=12?[cos(a+b)+cos(a-b)]

sin(a)cos(b)=12?[sin(a+b)+sin(a-b)]

5.二倍角公式

sin(2a)=2sin(a)cos(a)

cos(2a)=cos2(a)-sin2(a)=2cos2(a)-1=1-2sin2(a)

6.半角公式

sin2(a2)=1-cos(a)2

cos2(a2)=1+cos(a)2

tan(a2)=1-cos(a)sin(a)=sina1+cos(a)

7.万能公式

sin(a)=2tan(a2)1+tan2(a2)

cos(a)=1-tan2(a2)1+tan2(a2)

tan(a)=2tan(a2)1-tan2(a2)

8.其它公式(推导出来的 )

a?sin(a)+b?cos(a)=a2+b2sin(a+c) 其中 tan(c)=ba

a?sin(a)-b?cos(a)=a2+b2cos(a-c) 其中 tan(c)=ab

1+sin(a)=(sin(a2)+cos(a2))2

1-sin(a)=(sin(a2)-cos(a2))2

csc(a)=1sin(a)

sec(a)=1cos(a)

C语言题目:求正弦函数值。

你要把o=2*n+1放在循环内部。你的程序中o始终是个系统默认的值,而且应该是个很大的负数。

发表评论

评论列表

  • 这篇文章还没有收到评论,赶紧来抢沙发吧~