- C 标准库
- C 库 - 首页
- C 库 - <assert.h>
- C 库 - <complex.h>
- C 库 - <ctype.h>
- C 库 - <errno.h>
- C 库 - <fenv.h>
- C 库 - <float.h>
- C 库 - <inttypes.h>
- C 库 - <iso646.h>
- C 库 - <limits.h>
- C 库 - <locale.h>
- C 库 - <math.h>
- C 库 - <setjmp.h>
- C 库 - <signal.h>
- C 库 - <stdalign.h>
- C 库 - <stdarg.h>
- C 库 - <stdbool.h>
- C 库 - <stddef.h>
- C 库 - <stdio.h>
- C 库 - <stdlib.h>
- C 库 - <string.h>
- C 库 - <tgmath.h>
- C 库 - <time.h>
- C 库 - <wctype.h>
- C 标准库资源
- C 库 - 快速指南
- C 库 - 有用资源
- C 库 - 讨论
C 库 - atan2() 函数
C 的数学库 atan2() 函数用于根据两个值的符号确定正确的象限,返回y/x 的反正切值(以弧度为单位)。
反正切,也称为反正切函数。它是正切函数的反函数,它反转正切函数的效果。
此方法返回的角度是从正 x 轴到该点逆时针测量。
语法
以下是 C atan2() 函数的语法 -
double atan2( double y, double x );
参数
此函数接受以下参数 -
-
x - 它表示浮点类型的 x 坐标。
-
y - 它表示浮点类型的 y 坐标。
返回值
此函数返回将直角坐标 (𝑥, 𝑦) 转换为极坐标 (𝑟, Θ) 后得到的角度 Θ(以弧度为单位)。
示例 1
以下是一个基本的 C 程序,用于演示使用 atan2() 获取以弧度表示的角度。
#include <stdio.h> #include <math.h> int main() { double x = 1.0; double y = 1.0; double theta = atan2(y, x); printf("The angle is %f radians.\n", theta); return 0; }
输出
以下是输出 -
The angle is 0.785398 radians.
示例 2
让我们再举一个例子,点 (x,y) = (−1,1) 在第二象限。 atan2() 函数计算与正 x 轴形成的角度。
#include <stdio.h> #include <math.h> int main() { double x = -1.0; double y = 1.0; double theta = atan2(y, x); printf("The angle is %f radians.\n", theta); return 0; }
输出
以下是输出 -
The angle is 2.356194 radians.
示例 3
现在,创建另一个 C 程序以显示反正切值(以度为单位)。
#include <stdio.h> #include <math.h> #define PI 3.14159265 int main () { double x, y, ang_res, val; x = 10.0; y = 10.0; val = 180.0 / PI; ang_res = atan2 (y,x) * val; printf("The arc tangent of x = %lf, y = %lf ", x, y); printf("is %lf degrees\n", ang_res); return(0); }
输出
以下是输出 -
The arc tangent of x = 10.000000, y = 10.000000 is 45.000000 degrees
广告