重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
cmath是c++语言中的库函数,其中的c表示函数是来自c标准库的函数,math为数学常用库函数。
在清苑等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都网站设计、网站制作 网站设计制作定制网站开发,公司网站建设,企业网站建设,品牌网站建设,全网整合营销推广,成都外贸网站制作,清苑网站建设费用合理。
一般在C++程序中需要用到C语言的头文件时尽量不要写成.h形式,要把.h去掉,前面加C,所以cmath换到C程序中就是math.h
一些数学计算的公式的具体实现是放在math.h里,具体有:
double sin (double x); x的正弦值
double cos (double x); x的余弦值
double tan (double x); x的正切值
double asin (double x); 结果介于[-PI/2, PI/2],x值域为[-1,1]
double acos (double x); 结果介于[0, PI],x值域为[-1,1]
double atan (double x); 反正切(主值), 结果介于[-PI/2, PI/2]
double atan2 (double y, double x); 反正切(整圆值), 结果介于[-PI, PI]
double sinh (double x); x的双曲正弦值
double cosh (double x); x的双曲余弦值
double tanh (double x); x的双曲正切值
double exp (double x); 幂函数e^x
double pow (double x, double y); x^y,如果x=0且y=0,或者x0且y不是整型数,将产生定义域错误
double sqrt (double x); x的平方根,其中x=0
double log (double x); 以e为底的对数,自然对数,x0
double log10 (double x); 以10为底的对数,x0
double ceil (double x); 取上整
double floor (double x); 取下整
double fabs (double x); x的绝对值
double frexp (double x, int *exp); 标准化浮点数, x = f * 2^exp, 已知x求f, exp ( x介于[0.5, 1] )并返回f值
double ldexp (double x, int exp); 与frexp相反, 已知x, exp求x*2^exp
double modf (double x, double *ip); 将参数的整数部分通过指针回传, 返回小数部分,整数部分保存在*ip中
double fmod (double x, double y); 返回两参数相除x/y的余数,符号与x相同。如果y为0,则结果与具体的额实现有关
你可以简单理解为有两段代码,
一段是你自己的
还有一段是在math.h中,
现在你想调用math函数,
但这个函数不在你这段代码中,
而是在math.h中,
这时你就需要加一条#include指令,把头文件“math.h”包含到你的代码中来,
不然你没法使用math函数,
好吧
,
确实很绕~~
数学函数库,一些数学计算的公式的具体实现是放在math.h里,具体有:
1
三角函数
double
sin
(double);
double
cos
(double);
double
tan
(double);
2
反三角函数
double
asin
(double);
结果介于[-PI/2,
PI/2]
double
acos
(double);
结果介于[0,
PI]
double
atan
(double);
反正切(主值),
结果介于[-PI/2,
PI/2]
double
atan2
(double,
double);
反正切(整圆值),
结果介于[-PI/2,
PI/2]
3
双曲三角函数
double
sinh
(double);
double
cosh
(double);
double
tanh
(double);
4
指数与对数
double
exp
(double);
double
sqrt
(double);
double
log
(double);
以e为底的对数
double
log10
(double);
double
pow(double
x,
double
y)//计算以x为底数的y次幂
5
取整
double
ceil
(double);
取上整
double
floor
(double);
取下整
6
绝对值
double
fabs
(double);
double
cabs(struct
complex
znum)
//求复数的绝对值
7
标准化浮点数
double
frexp
(double
f,
int
*p);
标准化浮点数,
f
=
x
*
2^p,
已知f求x,
p
(
x介于[0.5,
1]
)
double
ldexp
(double
x,
int
p);
与frexp相反,
已知x,
p求f
8
取整与取余
double
modf
(double,
double*);
将参数的整数部分通过指针回传,
返回小数部分
double
fmod
(double,
double);
返回两参数相除的余数
9其他
double
hypot(double
x,
double
y);//已知直角三角形两个直角边长度,求斜边长度
double
ldexp(double
x,
int
exponent);//计算x*(2的exponent次幂)
double
poly(double
x,
int
degree,
double
coeffs
[]
)//计算多项式
nt
matherr(struct
exception
*e)//数学错误计算处理程序
source:
《C
C++
Code
Capsules》
头文件:#include
math.h
定义函数:double
sin(double
x);
函数说明:sin()用来计算参数x
的正玄值,然后将结果返回。
返回值:返回-1
至1
之间的计算结果。
范例#include
math.h
main(){
double
answer
=
sin(0.5);
printf("sin(0.5)
=
%f\n",
answer);
}
执行
sin(0.5)
=
0.479426
数学函数库,一些数学计算的公式的具体实现是放在math.h里,具体有:
1、 三角函数
double sin(double);正弦
double cos(double);余弦
double tan(double);正切
2 、反三角函数
double asin (double); 结果介于[-PI/2,PI/2]
double acos (double); 结果介于[0,PI]
double atan (double); 反正切(主值),结果介于[-PI/2,PI/2]
double atan2 (double,double); 反正切(整圆值),结果介于[-PI,PI]
3 、双曲三角函数
double sinh (double);
double cosh (double);
double tanh (double);
4 、指数与对数
double frexp(double value,int *exp);这是一个将value值拆分成小数部分f和(以2为底的)指数部分exp,并返回小数部分f,即f*2^exp。其中f取值在0.5~1.0范围或者0。
double ldexp(double x,int exp);这个函数刚好跟上面那个frexp函数功能相反,它的返回值是x*2^exp
double modf(double value,double *iptr);拆分value值,返回它的小数部分,iptr指向整数部分。
double log (double); 以e为底的对数
double log10 (double);以10为底的对数
double pow(double x,double y);计算以x为底数的y次幂
float powf(float x,float y); 功能与pow一致,只是输入与输出皆为浮点数
double exp (double);求取自然数e的幂
double sqrt (double);开平方
5 、取整
double ceil (double); 取上整,返回不比x小的最小整数
double floor (double); 取下整,返回不比x大的最大整数,即高斯函数[x]
6 、绝对值
int abs(int i); 求整型的绝对值
double fabs (double);求实型的绝对值
double cabs(struct complex znum);求复数的绝对值
7 、标准化浮点数
double frexp (double f,int *p); 标准化浮点数,f = x * 2^p,已知f求x,p (x介于[0.5,1])
double ldexp (double x,int p); 与frexp相反,已知x,p求f
8 、取整与取余
double modf (double,double*); 将参数的整数部分通过指针回传,返回小数部分
double fmod (double,double); 返回两参数相除的余数