C 库 - tan() 函数
C 库中的 tan() 函数返回给定角度的正切值。该函数在物理、天文学、谷歌地图、工程等多个领域都有广泛的实际应用。
语法
以下是 C 库函数 tan() 的语法 -
tan(double x);
参数
此函数仅接受一个参数 -
- x:double 类型表示用于计算正切值的角度(以弧度为单位)。
返回值
此函数返回指定的 x 值。
示例 1
以下是一个基本的 C 程序,演示了 tan() 函数的用法。
#include <stdio.h> #include <math.h> int main() { double angle_degrees = 45.0; // 转换为弧度 double angle_radians = angle_degrees * M_PI / 180.0; double tangent = tan(angle_radians); printf("The tangent of %.2f degrees is %.2f ", angle_degrees, tangent); return 0; }
输出
上述代码产生以下结果 -
The tangent of 45.00 degrees is 1.00
示例 2
这里,我们以数组的形式计算多个角度的正切值。
#include <stdio.h> #include <math.h> int main() { double angles_degrees[] = {0, 30, 45, 60, 90}; int size = sizeof(angles_degrees) / sizeof(angles_degrees[0]); printf("Angle (degrees) | Tangent "); printf("****************|********** "); for (int i = 0; i < size; i++) { double angle_radians = angles_degrees[i] * M_PI / 180.0; double tangent = tan(angle_radians); printf("%15.2f | %f ", angles_degrees[i], tangent); } return 0; }
输出
执行上述代码后,我们得到以下结果 -
Angle (degrees) | Tangent ****************|********** 0.00 | 0.000000 30.00 | 0.577350 45.00 | 1.000000 60.00 | 1.732051 90.00 | 16331239353195370.000000
示例 3
在处理特殊情况(例如无穷大和 NaN)时,它会计算可能导致特殊值的各种角度。因此,它会检查无穷大和 NaN 是否为指定值并打印。
#include <stdio.h> #include <math.h> int main() { double angles_radians[] = {M_PI / 4, M_PI / 2, M_PI, INFINITY, NAN}; int size = sizeof(angles_radians) / sizeof(angles_radians[0]); printf("Angle (radians) | Tangent "); printf("****************|********** "); for (int i = 0; i < size; i++) { double tangent = tan(angles_radians[i]); if (isnan(tangent)) { printf("%15.2f | NaN ", angles_radians[i]); } else if (isinf(tangent)) { printf("%15.2f | Infinity ", angles_radians[i]); } else { printf("%15.2f | %f ", angles_radians[i], tangent); } } return 0; }
输出
上述代码产生以下结果 -
Angle (radians) | Tangent ****************|********** 0.79 | 1.000000 1.57 | 16331239353195370.000000 3.14 | -0.000000 inf | NaN nan | NaN