在c++语言#include<math.h>当中包含有啥函数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在c++语言#include<math.h>当中包含有啥函数相关的知识,希望对你有一定的参考价值。

本人初学……#include<math.h>到底有哪些函数啊??我知道的有几个……例如:fabs()是绝对值、、pow(a,b)是a的b次方、、sqrt()表示平方根…………请问各位高手,还有哪些啊……说出越多越好

math.h一般见于C程序设计,#include<math.h> 是包含math头文件的意思, .h是头文件的扩展名(header file),这一句声明了本程序要用到标准库中的 math.h文件。math.h头文件中声明了常用的一些数学运算,比如乘方,开方运算等等,这些头文件还有很多,都存放在C软件的安装目录下。

数学函数库,一些数学计算的公式的具体实现是放在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); 返回两参数相除的余数
9 、其他
double hypot(double x,double y);已知直角三角形两个直角边长度,求斜边长度
double ldexp(double x,int exponent);计算x*(2的exponent次幂)
double poly(double x,int degree,double coeffs []);计算多项式
int matherr(struct exception *e);数学错误计算处理程序
参考技术A acos反余弦函数
asin反正弦值函数
atan反正切函数
cabs求复数的绝对值
ceil(num)得到不小于num的最小整数
cos余弦函数
cosh双曲余弦函数
exp求 e 的 arg 次幂
floor求不大于num的最大整数
fmod求x/y的余数
frexp将num分解成一个尾数和指数
_fpreset重新设置浮点运算系统
hypot已知直角三角形两个直角边长度,求斜边长度
ldexp计算x*2的exponent次幂,即2*pow(2,exponent)的数值
log计算x的自然对数(ln X)
log10计算x的常用对数
labs求长整型参数的绝对值
ldiv计算numer/denom的商和余数
matherr数学错误计算处理程序
modf分解x,以得到x的整数和小数部分
poly计算多项式
rand产生一个随机数(0到 0x7fff 之间)
random得到一个在0和参数num之间的随机数
randomize初始化随机数发生器
sin正弦函数
sinh双曲正弦函数
srand该函数和rand函数配合使用,产生随机数的起始发生数据
_status87得到浮点处理器的状态字值
tan计算角度x的正切数值
tanh计算参数x的双曲正切数值
atan2求x/y的反正切值
你列出来的我就没列了,楼主可以去下载一个函数查询器,那样学习起来比较方便本回答被提问者和网友采纳
参考技术B 常用到的有:
int abs(int) 求整型数的绝对值
double fabs(double) 求浮点数的绝对值
double acos(double) 求反余弦
double asin(double) 求反正弦
double atan(double) 求反正切
double cos(double) 求余弦
double sin(double) 求正弦
double tan(double) 求正切
double exp(double x) 指数函数e的x次方
double fmod(double x, double y) x/y的浮点余数
double log(double x) x的自然对数(以e为底)
double log10(double) x的对数(以10为底)
double pow(double x, double y) x的y次方
double sqrt(double x) x的平方根
如果想知道更多可以去相应开发工具的安装目录下的Include文件夹下查看MATH.H文件
参考技术C 你知道的数学函数,它都会有,所以你根本不需要知道那么详细。

C++中的cmath头文件

问问各位大侠,在VC中#include<cmath>头文件在什么情况下调用,和具体有什么要求,谢谢了。
小弟不胜感激!!!

math.h是C语言的头文件。其实在C++中用math.h也是可以的,C++是兼容C的。
不过推荐的是使用#include,而且必须声明在std命名空间:using namespace std;其中的函数和使用方法几乎完全相同。
VC里面是math.h,cmath是c++标准风格的头文件,位于std命名空间,用法和math.h差不多,都是包含一些常见的数学函数,比如平方、正余弦等等
参考技术A 按命名规则,cmath 应该是math.h的C++版,什么时候用math.h就什么时候用cmath替代。一般是要用到常用的数学函数时调用,比如abs(),sin()等。 参考技术B VC里面是math.h,cmath是c++标准风格的头文件,位于std命名空间,用法和math.h差不多,都是包含一些常见的数学函数,比如平方、正余弦等等
具体参考:http://www.ggv.com.cn/forum/clib/clib.html本回答被提问者采纳
参考技术C 回答

1. ceil()向上取整2. round()四舍五入取整,3. floor()向下取整且以上所有参数必须为double型4.取整与取余double modf (double,double*); 将参数的整数部分通过指针回传,返回小数部分double fmod (double,double); 返回两参数相除的余数绝对值1. int abs(int );求整型的绝对值2. double fabs (double);求实型的绝对值3. double cabs(complex);求复数的绝对值三角函数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);没有现成的cot三角函数,可以使用tan(PI/2-x)来实现指数与对数double frexp(double value,int exp);这是一个将value值拆分成小数部分f和(以2为底的)指数部分exp,并返回小数部分f,即f2^exp。其中f取值在0.5~1.0范围或者0。double ldexp(double x,int exp);这个函数刚好跟上面那个frexp函数功能相反,它的返回值是x*2^expdouble modf(double value,double *iptr);拆分value值,返回它的小数部分,iptr指向整数部分。double log (double); 以e为底的对数double log10 (double);以10为底的对数double pow(double x,double y);计算x的y次幂fl

以上是关于在c++语言#include<math.h>当中包含有啥函数的主要内容,如果未能解决你的问题,请参考以下文章

C++中的<math>和<cmath>有啥区别

校园导游系统(C++实现,VC6.0编译,使用EasyX图形库)

c++求解一元二次方程

C入门C++ 基础笔记

用C++语言编写勾股定理求斜边

黄金分割点(第五周 c语言版)