c语言求角度
‘壹’ c语言sin怎么用
C语言sin()用来计算参数x 的正玄值,然后将结果返回。返回-1 至1 之间的计算结果。
例子:
#include <math.h>
main(){
double answer = sin(0.5);
printf("sin(0.5) = %f ", answer);
}
执行
sin(0.5) = 0.479426
C语言sin():
sin()原型:double sin(double x)
sin()角度与弧度:
π=180°
1°=π/180
1(rad)=180/π
角度转弧度:用角度乘以π/180
弧度转角度:用弧度乘以180/π,或者用rtod()函数
(1)c语言求角度扩展阅读:
与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 ", x, result);
return 0;
}
‘贰’ c语言,反三角函数求角度请教
反三角函数 得到的是弧度,除 圆周率乘 180 就得 度数。
如果要算很多个 反三角函数,你可以 建一个系数 r2d.
弧度 乘 r2d 得角度。
例如:
#include <stdio.h>
#include <math.h>
int main()
{
double x,y;
double pi=asin(1.0)*2.0;
double r2d=180.0/pi;
int i;
for (i=0;i<5;i++){
x = i;
y=atan(x) * r2d;
printf("x=%g atan=%lf\n",x,y);
};
printf("==================\n");
for (i=0;i<10;i++){
x = i * 0.1;
y=acos(x) * r2d;
printf("x=%g acos=%lf\n",x,y);
};
return 0;
}
‘叁’ C语言怎样表示三角函数计算(注:要用“角度制”表示)
1.
C语言的三角函数库采用的单位都是弧度,如果要使用角度,就必须转换,从角度转换成弧度,或者是重写一个三角函数库。
2.
方法一,在调用三角函数之前先把角度换算成弧度,调用反三角函数之后把弧度换算成角度就可以了。可以用
pi
=
4.0
*
atan(1)
算出pi,用
a
=
d
/180.0*pi
转换角度到弧度。
例如:
sin(45
/180.0*pi);
就是计算的sin45。
3.
方法二,直接覆写三角函数。
例如sin函数:
double
dsin(double
d){
return
sin(45
/180.0*pi);
//原理和方法一样,调用的时候直接使用dsin(45)即可
}
‘肆’ C语言 输入三角形的边求角度
#include<math.h>
main()
{
floata,b,c,ca,cb,cc;
scanf("%f%f%f",&a,&b,&c);
ca=(b*b+c*c-a*a)/(2*c*b);
cb=(a*a-b*b+c*c)/(2*c*a);
cc=(a*a+b*b-c*c)/(2*a*b);
printf("<a=%f ",acos(ca)*180/3.1415926);
printf("<b=%f ",acos(cb)*180/3.1415926);
printf("<c=%f ",acos(cc)*180/3.1415926);
getch();
}
‘伍’ c语言,已知正切值如何求角度
C语言有反三角函数的,,比如:
float angle,pi_angle;
pi_angle=atan(tanA);//弧度
angle=pi_angle*180/3.14159;//角度,另注:反正弦余弦函数类似,asin,acos
‘陆’ 高分求 编程 c语言 已知2点求角度
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#define pi 3.1415926
struct point
{
double X;
double Y;
};
struct line
{
point A;
point B;
double deg;
};
int main( )
{
line lineA;
line lineB;
double tmp;
printf("请输点坐标(x,y)构造第一条直线\n");
printf("第一点x与y:");
scanf( "%lf%lf", &lineA.A.X, &lineA.A.Y );
printf("第二点x与y:");
scanf( "%lf%lf", &lineA.B.X, &lineA.B.Y );
//求角度
tmp=(lineA.B.Y-lineA.A.Y)/(lineA.B.X-lineA.A.X);
lineA.deg=atan(tmp);
lineA.deg=lineA.deg*double(180)/pi;
printf( "第一条直线斜线角度:%lf,%lf\n", tmp,lineA.deg );
printf("请输点坐标(x,y)构造第二条直线\n");
printf("第一点x与y:");
scanf( "%lf%lf", &lineB.A.X, &lineB.A.Y );
printf("第二点x与y:");
scanf( "%lf%lf", &lineB.B.X, &lineB.B.Y );
//求角度
tmp=(lineB.B.Y-lineB.A.Y)/(lineB.B.X-lineB.A.X);
lineB.deg=atan(tmp);
lineB.deg=lineB.deg*double(180)/pi;
printf( "第二条直线斜线角度:%lf,%lf\n", tmp,lineB.deg );
printf( "两条直线角度差:%lf\n", lineA.deg-lineB.deg );
return 0;
}
/*
atan等三角函数算出来的是pi形式的,看看45度的:
printf("%f\n",tan(double(45)/double(180)*pi));
printf("%f\n",atan(1)*double(180)/pi);
写的真累,看你题目是C语言,所以没用C++类来写
用类来写,又好写,又好读,又不容易出错
point点(x,y)其实可以直接用COORD,又怕你没有数据结构COORD
比如:
struct line
{
point A;
point B;
double deg;
};
改成
struct line
{
COORD dian; //COORD编译器数据结构dian有dian.X和dian.Y
double deg;
};
*/
‘柒’ 帮忙用C语言计算直角三角形角度
先用atan求弧度,然后转成角度就可以了
代码如下
#include<stdio.h>
#include<math.h>
#definePI3.14159265359
#defineCONVERT(x)(x*180/PI)
intmain()
{
doublex=atan(1.5/2);
printf("%lf ",CONVERT(x));
return0;
}
如果邻边可能为斜边 那还有一种情况求asin值,后转为角度。
‘捌’ C语言中已知sin、cos的值怎么求角度比如sina=0.2,那么a=请求有经验的帮帮忙!
c语言的math.h头文件中有反三角函数的。比如sin a = 0.2 , 只需 double a = asin(0.2),但是究竟在哪个区间,加减2*pi的问题还得自行解决……