C语言常用函数分类总结
一、C语言常用的数学函数
要使用这些函数时,必须在程序文件头加入:#include <math.h>
函数说明如下:
1、double sin(double x) x 的正弦函数值
2、double cos(double x) x 的余弦函数值
3、double tan(double x) x 的正切函数值
4、double asin(double x) x 的反正弦函数值 sin-1x,x的值在 [-1,1] 之间,传回的值在 [-p/2,p/2] 之间
5、double acos(double x) x 的反余弦函数值cos-1x,x的值在 [-1,1] 之间,传回的值在 [-p/2,p/2] 之间
6、double atan(double x) x 的反正切函数值tan-1x,传回的值在 [-p/2,p/2] 之间
7、double atan2(double y, double x) y/x 的反正切函数值tan-1(y/x),传回的值在 [-p, p] 之间
8、double sinh(double x) x 的双曲正弦函数值
9、double cosh(double x) x 的双曲余弦函数值
10、double tanh(double x) x 的双曲正切函数值
11、double exp(double x) x 的指数函数 ex
12、double log(double x) x 的自然对数 ln(x),x > 0
13、double log10(double x) x 底数为 10 的对数,log10x,x > 0
14、double pow(double x, double y) x 的 y 次方 xy
15、double sqrt(double x) x 的根号值 √x
16、double ceil(double x) 不小于 x 的最小整数(但其型别为 double)
17、double floor(double x) 不大于 x 的最大整数(但其型别为 double)
18、int abs(int x) 整数 x 的绝对值 |x|
19、long labs(long x) 长整数 x 的绝对值 |x|
20、double fabs(double x) 实数 x 的绝对值 |x|
21、double ldexp(double x, int n) eg: y=ldexp(x,n); printf("x=%ftn=%dty=%fn",x,n,y);
22、double fmod(double x, double y) x/y 的浮点数余数,符号与 x 相同
二、三角函数:(所有参数必须为弧度)
1.acos
函数申明:acos (double x);
用途:用来返回给定的 X 的反余弦函数。
2.asin
函数申明:asin (double x);
用途:用来返回给定的 X 的反正弦函数。
3.atan
函数申明:atan (double x);
用途:用来返回给定的 X 的反正切函数。
4.sin
函数声明:sin (double x);
用途:用来返回给定的 X 的正弦值。
5.cos
函数声明:cos (double x);
用途:用来返回给定的 X 的余弦值。
6.tan
函数声明:tan (double x);
用途:用来返回给定的 X 的正切值。
7.atan2
函数声明:atan2 (double y, double x);
用途:返回给定的 X 及 Y 坐标值的反正切值
三、其他函数:
8.atof
函数名: atof (const char *s);
功 能: 把字符串转换成浮点数
用 法: double atof(const char *nptr);
程序例:
#i nclude <stdlib.h>
#i nclude <stdio.h>
int main(void)
{
float arg,*point=&arg;
float f;
char *str = "12345.67";
f = atof(str);
printf("string = %s float = %f/n", str, f);
return 0;
}
9. ceil 和 floor
函数名: ceil
floor
功 能: 向上舍入
向下舍入
用 法: double ceil(double x);
double floor(double x);
程序例:
#i nclude<math.h>
int main(void)
{
double number = 123.54;
double down, up;
down = floor(number);
up = ceil(number);
printf("original number %5.2lf/n", number);
printf("number rounded down %5.2lf/n", down);
printf("number rounded up %5.2lf/n", up);
return 0;
}该程序运行结果:original number 123.54
number rounded down 123.00
number rounded up 124.00
10.fabs
函数名:fabs
功能:求浮点数x的绝对值.
用法:fabs (double x);
11.fmod
函数名: fmod
功 能: 计算x对y的模, 即x/y的余数
用 法: double fmod(double x, double y);
程序例:
#i nclude <stdio.h>
#i nclude <math.h>
int main(void)
{
double x = 5.0, y = 2.0;
double result;
result = fmod(x,y);
printf("The remainder of (%lf / %lf) is /
%lf/n", x, y, result);
return 0;
}
12.abs
函数名:abs
功能:返回整型数的绝对值.
用法:Abs(number)
number 参数可以是任意有效的数值表达式。如果 number 包含 Null,则返回 Null;如果是未初始化变量,则返回 0.
四、幂指数:
13.exp
函数名:exp
功能:返回 e 的 n 次幂.
用法:exp (double x);
14.frexp
函数名: frexp
功 能: 把一个双精度数分解为尾数的指数
用 法: double frexp(double value, int *eptr);
程序例:
#i nclude <math.h>
#i nclude <stdio.h>
int main(void)
{
double mantissa, number;
int exponent;
number = 8.0;
mantissa = frexp(number, &exponent);
printf("The number %lf is ", number);
printf("%lf times two to the ", mantissa);
printf("power of %d/n", exponent);
return 0;
}
15.log
函数名:log
功 能: 自然对数函数ln(x)
用 法: double log(double x);
程序例:
#i nclude <math.h>
#i nclude <stdio.h>
int main(void)
{
double result;
double x = 8.6872;
result = log(x);
printf("The natural log of %lf is %lf/n", x, result);
return 0;
}
log(x,y)=ln(y)/ln(x)
16.ldexp
函数名: ldexp
功 能: 计算value*(2的exp幂 ).
用 法: double ldexp(double value, int exp);
程序例:
#i nclude
#i nclude
int main(void)
{
double value;
double x = 2;
value = ldexp(x,3);
printf("The ldexp value is: %lf/n", value);
return 0;
} 运行结果为:2*2^3=16.
17.log10
函数名:log10
功能:返回以 10 为底的对数.
用法:log10 (double x);
18.sqrt
函数名:sqrt
功能:返回指定数字的平方根.
用法:sqrt (double x);
19.modf
函数名:modf
功 能: 把数分为指数和尾数
用 法: double modf(double value, double *iptr);
程序例:
#i nclude <math.h>
#i nclude <stdio.h>
int main(void)
{
double fraction, integer;
double number = 100000.567;
fraction = modf(number, &integer);
printf("The whole and fractional parts of %lf are %lf and %lf/n",number, integer, fraction);
return 0;
}
20.pow
函数名:pow
功能:返回指定数字的指定次幂.
用法:pow (double x, double y);(将返回x的y次幂)
五、双曲函数:
21.cosh
函数名:cosh
功能:返回指定角度的双曲余弦值.
用法:Double Cosh(double x(以弧度计量的角度)) ;
22.sinh
函数名:sinh
功能:返回指定角度的双曲正弦值。
用法:sinh (double x);(其中参数x必须为弧度制)
23.tanh
函数名:tanh
功能:回指定角度的双曲正切值.
用法:tanh (double x);