C语言atan2()函数:求y/x的反正切值
头文件:#include <math.h>
atan2() 函数用于求 y / x 的反正切值。其原型为:
double atan2(double y, double x);
【参数】x为坐标的X轴值,y为坐标的Y轴值。如果 x 和 y 的值都为 0,将会导致错误。
atan2() 求坐标 x 和 y 的坐标的反正切值。反正切的角度值等于 X 轴与通过原点和给定坐标点的直线之间的夹角。结果以弧度表示,并介于 -π 到 π 之间。
在三角函数中,两个参数的函数 atan2() 是正切函数的一个变种。对于任意不同时等于 0 的实参数x和y,atan2(y,x) 所表达的意思是坐标原点为起点,指向(x,y)的射线在坐标平面上与x轴正方向之间的角的角度。当 y>0 时,射线与 x 轴正方向的所得的角的角度指的是 x 轴正方向绕逆时针方向到达射线旋转的角的角度;而当 y<0 时,射线与 x 轴正方向所得的角的角度指的是 x 轴正方向绕顺时针方向达到射线旋转的角的角度。
【返回值】返回以弧度表示的反正切值,范围为 -π/2 至 π/2 之间。
弧度与角度的关系为:
弧度 = 180 / π 角度
角度 = π / 180 弧度
使用 rtod( ) 函数可以将弧度值转换为角度值。
注意,使用 GCC 编译时请加入-lm。
例如,求 x=-10.000000, y=10.000000 的反正切。
- #include <stdio.h>
- #include <math.h>
- #define PI 3.14159265
- int main ()
- {
- double x, y, result;
- x = -10.0;
- y = 10.0;
- result = atan2 (y,x) * 180 / PI;
- printf ("The arc tangent for (x=%f, y=%f) is %f degrees\n", x, y, result );
- return 0;
- }
输出结果:
The arc tangent for (x=-10.000000, y=10.000000) is 135.000000 degrees.
又如,求两个角度的余弦值并输出。
- #include<stdio.h>
- #include<math.h>
- int main(void)
- {
- double result;
- double p_X = 100.0,p_Y = 50.0;
- result =atan2(p_Y,p_X); // 求反正切值
- printf("atan2(%lf,%lf) is %lf\n",p_X,p_Y,result); // 格式化输出
- return 0;
- }
运行结果
atan2(100.000000,50.000000) is 0.463648
程序先定义3个变量,一个结果变量result,两 个坐标变量p_X和p_Y。语句result=atan2(p_Y,p_X);的作用是求出以p_Y为X轴坐标,p_X为Y轴坐标的反正切值,结果赋值于 result,最后使用printf()函数输出显示。
C语言atan2()函数:求y/x的反正切值的更多相关文章
- C 语言 clock() 函数,例:计算多项式值
C 语言 clock() 函数,例:计算多项式值 /** * clock(): 捕捉从程序开始运行到 clock() 被调用时所耗费的时间. * 这个时间单位是 clock tick, 即" ...
- matlab中fminbnd函数求最小或者组大值
clc; clear all; close all; fx = @(x) -(0.4./sqrt(1 + x.^2) - sqrt(1+x.^2) .* (1- 0.4./(1 + x.^2))+x) ...
- Go语言 5 函数
文章由作者马志国在博客园的原创,若转载请于明显处标记出处:http://www.cnblogs.com/mazg/ 今天,我们来学习Go语言编程的第五章,函数.首先简单说一下函数的概念和作用.函数是一 ...
- 06--C语言数学函数
在使用C语言数学函数时候,应该在该源文件中使用以下命令行: #include <math.h> 或 #include "math.h",这里的<>跟&quo ...
- 3016C语言_函数
第六章 函数 6.1 函数概述 定义 函数:是具有一定功能的一个程序块:是C语言的基本组成单位. 在前面各章的例子及读者自己编写的C语言程序中都用到了以“main“开头的主函数,并且在程序中频繁地调用 ...
- 【C语言】函数和自定义函数
函数,我之前也提到过一点点内容.其实函数是很好理解的,但是写起来又十分麻烦. 一. 函数引入 我们知道,C源程序是由函数组成的.请看下面的简单函数例子 #include <stdio.h ...
- c语言中函数的简单介绍
c语言中函数的介绍: 函数,简单的说就是代码的打包.存放在一个地方,当需要的时候调用. 函数分类: 1.无参无返回值函数 void func() 2.无参有返回值函数 int func() 3.有参 ...
- C语言之函数
函数:为了完成某一项功能而编写的代码的集合. C语言中的函数可以分为内置和自定函数. 内置函数:C语言中已经定义过的函数,不需要 声明,可以直接调用. 常见的内置函数: 函数名 类库 说明 doubl ...
- Go语言中函数的实现
Go 语言函数 函数是基本的代码块,用于执行一个任务. Go 语言最少有个 main() 函数. 你可以通过函数来划分不同功能,逻辑上每个函数执行的是指定的任务. 函数声明告诉了编译器函数的名称,返回 ...
随机推荐
- 【Android Studio快捷键】之代码提示
接下来说如何设置代码自动提示,如图: 图上内容比较多,我直接按区域划分成6块区域来说吧: 区域1:这个选项是关于提示的时候如何进行匹配,即按照什么条件来进行提示内容的搜索. All:选择这个的话,意思 ...
- MySQL数据库之------DOS命令行的基本操作
1. 进入D盘的如下路径: 按住 ctrl+shift ,右键,选择在此处打开命令行窗口.出现图2. 图 1 图 2 2. . 3. 图 3 4. 图 4 ...
- code complete part2
基本数据类型: 1. 程序主体中仅能出现的数字就是0和1,除此之外,所有的数字都要用宏定义或者const类型,用清晰的变量名描述用途 2. 预防除零错误, assert(denominator!=0) ...
- 3.基础点的移动web
1.移动端的屏幕适配 在Web开发中可以使用px(像素).em.pt(点).in(英寸).cm(厘米)做为长度单位,我们最常用px(像素)做为长度单位. 我们可以将上述的几种长度单位划分成相对长度单位 ...
- CSS布局奇技淫巧:各种居中
居中是我们使用css来布局时常遇到的情况.使用css来进行居中时,有时一个属性就能搞定,有时则需要一定的技巧才能兼容到所有浏览器,本文就居中的一些常用方法做个简单的介绍. 注:本文所讲方法除了特别说明 ...
- win10 localhost 解析为 ipv6地址 ::1 的解决办法
今天遇到个奇怪的问题,localhost 访问时提示 not found 404,但是有127.0.0.1可以访问.最后找到原因,是因为 windows 把 localhost 解析为 ipv6 地址 ...
- WAMPSERVER PHP版本5.3的降到 5.2?
在这里下载5.2版本PHP,http://sourceforge.net/projects/wampserver/files/WampServer%202%20-%20Extensions/PHP/下 ...
- linux学习笔记--vi与vim编辑器
vi编辑器全名为Visual Interface,即为可视化接口,类似于Windows中的记事本 vim相当于是vi的一个升级版本,包含vi的一切操作命令,vim相对于vi做了哪些提升: 1.vim支 ...
- KO中对象数组排序时,两个属性的优先顺序不一致时的排序实现
function FromSort(left, right, asc) { if (left.属性1 != "") { if (right.属性1 != &qu ...
- vector与list区别
vector为存储的对象分配一块连续的地址空间,因此对vector中的元素随机访问效率很高.在vecotor中插入或者删除某个元素,需要将现有元素进行复制,移动.如果vector中存储的对象很大,或者 ...