头文件:#include <math.h>
atan() 函数用来求反正切的值,其原型为:
double atan(double x);
参数 x 为任意值,返回值以弧度表示,范围为 -π/2 到 +π/2 (-1.57079 到 1.57079)。返回值显示到小数点后第几位数由 SET DECIMALS 决定。
注意,仅仅根据正弦值 x 并不能确定返回值位于哪一个象限,因此 atan() 的返回值不包含象限信息,如果想知道在哪一象限,请参考 atan2() 函数。
弧度与角度的关系为:
使用 rtod( ) 函数可以将弧度值转换为角度值。
注意,使用 GCC 编译时请加入-lm。
例如,求 1.0 的反正切值。
- #include <stdio.h>
- #include <math.h>
- #define PI 3.14159265
- int main ()
- {
- double param, result;
- param = 1.0;
- result = atan (param) * 180 / PI;
- printf ("The arc tangent of %f is %f degrees\n", param, result );
- return 0;
- }
运行结果:The arc tangent of 1.000000 is 45.000000 degrees.
又如,知道一个正切值,求其反正切。
- #include<stdio.h>
- #include<math.h>
- int main(void)
- {
- double angl,result;
- angl = 1;
- result =atan(tan(angl));/*求反正切值*/
- printf("atan(%lf) is %lf\n",tan(angl),result);/*格式化输出*/
- angl = 3.1415926;
- result = atan(angl);/*求反正切值*/
- printf("atan(%lf) is %lf\n",tan(angl),result);/*格式化输出*/
- return 0;
- }
运行结果:
程序先定义double型角度变量angl和结果变量 result,然后把角度变量值赋值为1,语句atan(tan(angl))的作用是先求角度angl的正切值,再将该正切值赋值给result,正确的结果应该是1,紧接着下一句是使用 printf() 函数输出计算结果到计算机屏幕。后面的代码功能一样,只是换个角度值以便对比。