不用π求坐标夹角大小

一、根据x表示与x轴的夹角,tanx=y/x;

atan2用法:atan2(y,x)所表达的意思是坐标原点为起点,指向(x,y)的射线在坐标平面上与x轴正方向之间的角的角度。代码示列:

1  while(n--)
2     {
3         scanf("%lf%lf%lf%lf",&x1,&y1,&x2,&y2);
4         a1=atan2(y1,x1);
5         a2=atan2(y2,x2);
6         a3=fabs(a1-a2);
7         printf("%.2lf
",a3*180/PI);
8     }

二、根据x表示所求夹角,cosx=向量a 点乘 向量b/模a*模b

while(n--)
    {
        double x1,x2,y1,y2,t,a,b,c;
        scanf("%lf%lf%lf%lf",&x1,&y1,&x2,&y2);
        a=x1*x2+y1*y2;
        b=sqrt(x2*x2+y2*y2);
        c=sqrt(x1*x1+y1*y1);
        t=acos(a/b/c)*180/PI;
        printf("%.2lf
",t);
    }
原文地址:https://www.cnblogs.com/darklights/p/5064978.html