math.h 头文件函数
math.h
头文件提供了各种数学函数,用于执行基本和高级的数学计算。
以下是该头文件中提供的主要函数列表及其简要描述:
1. 基本数学函数
double sin(double x);
- 功能:计算角度
x
(以弧度为单位)的正弦值。 - 返回值:
x
的正弦值。
double cos(double x);
- 功能:计算角度
x
(以弧度为单位)的余弦值。 - 返回值:
x
的余弦值。
double tan(double x);
- 功能:计算角度
x
(以弧度为单位)的正切值。 - 返回值:
x
的正切值。
double asin(double x);
- 功能:计算
x
的反正弦值,结果以弧度表示。 - 返回值:
x
的反正弦值。
double acos(double x);
- 功能:计算
x
的反余弦值,结果以弧度表示。 - 返回值:
x
的反余弦值。
double atan(double x);
- 功能:计算
x
的反正切值,结果以弧度表示。 - 返回值:
x
的反正切值。
double atan2(double y, double x);
- 功能:计算
y/x
的反正切值,考虑象限,结果以弧度表示。 - 返回值:
y/x
的反正切值。
2. 双曲函数
double sinh(double x);
- 功能:计算
x
的双曲正弦值。 - 返回值:
x
的双曲正弦值。
double cosh(double x);
- 功能:计算
x
的双曲余弦值。 - 返回值:
x
的双曲余弦值。
double tanh(double x)
- 功能:计算
x
的双曲正切值。 - 返回值:
x
的双曲正切值。
double asinh(double x);
- 功能:计算
x
的反双曲正弦值。 - 返回值:
x
的反双曲正弦值。
double acosh(double x);
- 功能:计算
x
的反双曲余弦值。 - 返回值:
x
的反双曲余弦值。
double atanh(double x);
- 功能:计算
x
的反双曲正切值。 - 返回值:
x
的反双曲正切值。
3. 指数与对数函数
double exp(double x);
- 功能:计算
e
(自然对数的底数)的x
次幂。 - 返回值:
e^x
的值。
double log(double x);
- 功能:计算
x
的自然对数(以e
为底)。 - 返回值:
x
的自然对数。
double log10(double x);
- 功能:计算
x
的常用对数(以10
为底)。 - 返回值:
x
的常用对数。
double exp2(double x);
- 功能:计算
2
的x
次幂。 - 返回值:
2^x
的值。
double log2(double x);
- 功能:计算
x
的以2
为底的对数。 - 返回值:
x
的以2
为底的对数。
double expm1(double x);
- 功能:计算
e^x - 1
,在x
逼近 0 时有更高的精度。 - 返回值:
e^x - 1
的值。
double log1p(double x);
- 功能:计算
ln(1 + x)
,在x
逼近 0 时有更高的精度。 - 返回值:
ln(1 + x)
的值。
4. 幂和平方根函数
double pow(double x, double y);
- 功能:计算
x
的y
次幂。 - 返回值:
x^y
的值。
double sqrt(double x);
- 功能:计算
x
的平方根。 - 返回值:
x
的平方根。
double cbrt(double x);
- 功能:计算
x
的立方根。 - 返回值:
x
的立方根。
double hypot(double x, double y);
- 功能:计算欧几里得范数,即
sqrt(x^2 + y^2)
。 - 返回值:
x
和y
的欧几里得距离。
5. 取整和余数函数
double ceil(double x);
- 功能:返回大于或等于
x
的最小整数值。 - 返回值:
x
的向上取整值。
double floor(double x);
- 功能:返回小于或等于
x
的最大整数值。 - 返回值:
x
的向下取整值。
double fmod(double x, double y);
- 功能:计算
x
除以y
的余数。 - 返回值:
x
模y
的值。
double trunc(double x);
- 功能:截断
x
的小数部分,取整数部分。 - 返回值:
x
的截断值。
double round(double x);
- 功能:四舍五入
x
到最近的整数。 - 返回值:
x
的四舍五入值。
long lround(double x);
- 功能:四舍五入
x
,返回长整型结果。 - 返回值:
x
的四舍五入长整型值。
long long llround(double x);
- 功能:四舍五入
x
,返回长长整型结果。 - 返回值:
x
的四舍五入长长整型值。
6. 其他数学函数
double fabs(double x);
- 功能:计算
x
的绝对值。 - 返回值:
x
的绝对值。
double fma(double x, double y, double z);
- 功能:计算
(x * y) + z
,以单一操作完成,避免精度损失。 - 返回值:计算结果。
double fmax(double x, double y);
- 功能:返回
x
和y
中的较大值。 - 返回值:较大的值。
double fmin(double x, double y);
- 功能:返回
x
和y
中的较小值。 - 返回值:较小的值。
double frexp(double x, int *exp);
- 功能:将
x
分解为尾数和指数,使得x = mantissa * 2^exp
。 - 返回值:尾数部分,
exp
保存指数部分。
double ldexp(double x, int exp);
- 功能:计算
x * 2^exp
。 - 返回值:计算结果。
double modf(double x, double *iptr);
- 功能:将
x
分解为整数部分和小数部分。 - 返回值:小数部分,
iptr
保存整数部分。
double copysign(double x, double y);
- 功能:返回与
x
绝对值相同、符号与y
相同的值。 - 返回值:组合后的值。
double nan(const char *tagp);
- 功能:生成一个表示 “非数字”(NaN) 的值。
- 返回值:NaN 值。
double nextafter(double x, double y);
- 功能:返回从
x
开始朝y
方向移动的下一个可表示的浮点值。 - 返回值:下一个浮点值。
double remainder(double x, double y);
- 功能:计算
x
除以y
的余数,结果可能为负数。 - 返回值:余数值。
double remquo(double x, double y, int *quo);
- 功能:计算
x
除以y
的余数,并存储商的部分信息。 - 返回值:余数值,
quo
保存商的部分信息。
7. 特殊函数
double erf(double x);
- 功能:计算
x
的误差函数值。 - 返回值:误差函数值。
double erfc(double x);
- 功能:计算
x
的余误差函数值,即1 - erf(x)
。 - 返回值:余误差函数值。
double tgamma(double x);
- 功能:计算
x
的伽玛函数值。 - 返回值:伽玛函数值。
double lgamma(double x);
- 功能:计算
x
的伽玛函数的自然对数值。 - 返回值:伽玛函数自然对数值。
这些函数在数学计算、科学研究和工程应用中非常有用,可用于复杂的数学运算和数据处理。