C语言中正切的相关函数总结

C语言tan()函数:正切函数
头文件:

#include <math.h>

tan() 函数用来求给定值的正切值,其原型为:

  double tan(double x);

【参数】x 为给定的弧度值。

【返回值】返回 x 的正切值。

注意,使用 GCC 编译时请加入-lm。

请看下面的代码:

#include <math.h>
main(){
  double answer = tan(0.5);
  printf("tan(0.5) = %f\n", answer);
}

输出结果:

tan(0.5) = 0.546302

C语言tanh()函数:双曲线正切函数
头文件:

#include <math.h>

tanh() 用来求一个数的双曲正切值,其原型为:

  double tanh(double x);

【参数】x 为双曲正切上的某点。

【返回值】返回 x 的双曲正切值,取值范围为 -1 到 1。

双曲正切的定义为 sinh(x)/cosh(x),即

双曲正切曲线示意图:

注意,使用 GCC 编译时请加入-lm。

请看下面的代码:

#include <math.h>
main(){
  double answer = tanh(0.5);
  printf("tanh(0.5) = %f\n", answer);
}

输出结果:

tanh(0.5) = 0.462117

C语言atan()函数:求反正切的值(以弧度表示)
头文件:

#include <math.h>

定义函数:

double atan(double x);

函数说明:atan()用来计算参数x 的反正切值,然后将结果返回。

返回值:返回-PI/2 至PI/2 之间的计算结果。

注意,使用 GCC 编译时请加入-lm。

范例

#include <math.h>
main(){
  double angle;
  angle = atan(1);
  printf("angle = %f\n", angle);
}

执行

angle = 1.570796

C语言atan2()函数:求反正切的值(以弧度表示)
头文件:

#include <math.h>

定义函数:

double atan2(double y, double x);

函数说明:atan2()用来计算参数y/x 的反正切值,然后将结果返回。

返回值:返回-PI/2 至PI/2 之间的计算结果。

注意,使用 GCC 编译时请加入-lm。

范例

#include <math.h>
main(){
  double angle;
  angle = atan2(1, 2);
  printf("angle = %f\n", angle);
}

执行

angle = 0.463648
(0)

相关推荐

  • 详解C语言中的getgrgid()函数和getgrnam()函数

    C语言getgrgid()函数:从组文件中取得指定gid的数据 头文件: #include <grp.h> #include <sys/types.h> 定义函数: strcut group * getgrgid(gid_t gid); 函数说明:getgrgid()用来依参数gid 指定的组识别码逐一搜索组文件, 找到时便将该组的数据以group 结构返回. 返回值:返回 group 结构数据, 如果返回NULL 则表示已无数据, 或有错误发生. 范例 /* 取得gid=3 的组

  • 用C语言求幂函数和指数函数的方法

    C语言pow()函数:求x的y次方(次幂) 头文件: #include <math.h> pow() 函数用来求 x 的 y 次幂(次方),其原型为: double pow(double x, double y); pow()用来计算以x 为底的 y 次方值,然后将结果返回.设返回值为 ret,则 ret = xy. 可能导致错误的情况: 如果底数 x 为负数并且指数 y 不是整数,将会导致 domain error 错误. 如果底数 x 和指数 y 都是 0,可能会导致 domain err

  • C语言中settimeofday函数和gettimeofday函数的使用

    C语言settimeofday()函数:设置当前时间戳 头文件: #include <sys/time.h> #include <unistd.h> 定义函数: int settimeofday(const struct timeval *tv, const struct timezone *tz); 函数说明:settimeofday()会把目前时间设成由tv 所指的结构信息,当地时区信息则设成tz 所指的结构.详细的说明请参考gettimeofday(). 注意,在Linux下

  • C语言中正切的相关函数总结

    C语言tan()函数:正切函数 头文件: #include <math.h> tan() 函数用来求给定值的正切值,其原型为: double tan(double x); [参数]x 为给定的弧度值. [返回值]返回 x 的正切值. 注意,使用 GCC 编译时请加入-lm. 请看下面的代码: #include <math.h> main(){ double answer = tan(0.5); printf("tan(0.5) = %f\n", answer);

  • 一文详解C语言中文件相关函数的使用

    目录 一.文件和流 1.程序文件 2.数据文件 3.流 二.文件组成 三.文件的打开和关闭 1.文件的打开fopen 2.文件关闭fclose 四.文件的顺序读写 1.使用fputc和fgetc写入/读取单个字符 2.使用fputs和fgets写入/读取一串字符 3.使用fprintf和fscanf按照指定的格式写入/读取 4.使用fwrite和fread按照二进制的方式写入/读取 5.使用sprintf和sscanf将格式化数据和字符串互相转换(文件无关) 五.文件的随机读写 1.fseek(

  • Go语言中的延迟函数defer示例详解

    前言 大家都知道go语言的defer功能很强大,对于资源管理非常方便,但是如果没用好,也会有陷阱哦.Go 语言中延迟函数 defer 充当着 try...catch 的重任,使用起来也非常简便,然而在实际应用中,很多 gopher 并没有真正搞明白 defer.return.返回值.panic 之间的执行顺序,从而掉进坑中,今天我们就来揭开它的神秘面纱!话不多说了,来一起看看详细的介绍吧. 先来运行下面两段代码: A. 匿名返回值的情况 package main import ( "fmt&qu

  • Go语言中的流程控制结构和函数详解

    这小节我们要介绍Go里面的流程控制以及函数操作. 流程控制 流程控制在编程语言中是最伟大的发明了,因为有了它,你可以通过很简单的流程描述来表达很复杂的逻辑.Go中流程控制分三大类:条件判断,循环控制和无条件跳转. if if也许是各种编程语言中最常见的了,它的语法概括起来就是:如果满足条件就做某事,否则做另一件事. Go里面if条件判断语句中不需要括号,如下代码所示: 复制代码 代码如下: if x > 10 {     fmt.Println("x is greater than 10&

  • Go语言中的指针运算实例分析

    本文实例分析了Go语言中的指针运算方法.分享给大家供大家参考.具体分析如下: Go语言的语法上是不支持指针运算的,所有指针都在可控的一个范围内使用,没有C语言的*void然后随意转换指针类型这样的东西.最近在思考Go如何操作共享内存,共享内存就需要把指针转成不同类型或者对指针进行运算再获取数据. 这里对Go语言内置的unsafe模块做了一个实验,发现通过unsafe模块,Go语言一样可以做指针运算,只是比C的方式繁琐一些,但是理解上是一样的. 下面是实验代码: 复制代码 代码如下: packag

  • Go语言中的匿名结构体用法实例

    本文实例讲述了Go语言中的匿名结构体用法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: package main      import (     "fmt" )      func main() {     var user struct{Name string; Gender int}     user.Name = "dotcoo"     user.Gender = 1     fmt.Printf("%#v\n",

  • 详解易语言中的数据类型

    各种数据存放在磁盘或内存中都有其不同的存放格式,因此就存在不同的数据类型.了解各种数据的特性,对编程开发来说是十分重要. 程序中经常会进行一些运算,易语言中的运算都要使用运算符进行识别处理,并通过运算表达式来完成运算操作.程序中对各数据之间的关系的描述也要通过运算符. 1.易语言的数据类型 一个程序内部应包括两个方面的内容:1.数据的描述.2.操作步骤,即对程序动作的描述. 数据是程序操作的对象,操作的结果会改变数据的内容.打个比方:要做一道菜,做菜前先选择烹饪的原材料(即对数据进行描述),然后

  • Delphi之Pascal语言中的关键字及保留字汇总

    本文汇总了Pascal语言中的关键字及保留字如下,供大家参考: absolute//指令(变量) abstract//指令(方法) and//运算符(布尔) array//类型 as//运算符(RTTI) asm//语句 assembler//向后兼容(汇编) at//语句(异常处理) automated//访问类别符(类) begin//块标记 case//语句 cdecl//函数调用协定 class//类型 const//声明或指令(参数) constructor//特殊方法 contain

  • jsp页面中表达式语言中的$符号不起作用的解决方法

    今天myeclipse里部署了之前做的一个测试项目,发现jsp里的$符号tomcat启动后页面上显示出来了,百度搜了下别人也有类似的问题出现过.经提醒原来是web.xml配置的version设置的是2.5而我tomcat5启动的.是tomcat的版本低于web的版本,从而导致$符号不能正常使用. 后将tomcat5改用tomcat6.jdk采用1.6 启动spring2.5项目.$显示问题解决. 以下是网上摘录的详细说明: 在jsp页面中用表达式语言中的$符号,如${pageScope.titl

  • 深入讲解Go语言中函数new与make的使用和区别

    前言 本文主要给大家介绍了Go语言中函数new与make的使用和区别,关于Go语言中new和make是内建的两个函数,主要用来创建分配类型内存.在我们定义生成变量的时候,可能会觉得有点迷惑,其实他们的规则很简单,下面我们就通过一些示例说明他们的区别和使用,话不多说了,来一起看看详细的介绍吧. 变量的声明 var i int var s string 变量的声明我们可以通过var关键字,然后就可以在程序中使用.当我们不指定变量的默认值时,这些变量的默认值是他们的零值,比如int类型的零值是0,st

随机推荐