c语言有绝对值吗?

如题所述

有。C语言求绝对值的函数为abs( x )与fbs( x ),abs( x )包含于stdlib.h,且两者均包含于math头文件之下。

1、abs( x )函数

格式:int abs( int i );

作用:求整型数的绝对值

例子:

#include<stdio.h>

#include <stdlib.h>

#include<math.h>

main(   )

{

int a = 1, b = -2 ;

printf("%d的绝对值是%d,%d的绝对值是%d\n", a, abs( a ), b, abs( b ));

}

运行结果为:1的绝对值是1,-2的绝对值是2

2、fabs( x )函数

格式:float fabs( float i ); / double fabs( double x );

作用:求浮点数的绝对值

例子:

#include<stdio.h>

#include<math.h>

main(   )

{

float a = 1.4, b = -2.7 ;

printf("%f的绝对值是%f,%f的绝对值是%f\n", a, fabs( a ), b, fabs( b ));

}

运行结果为:1.400000的绝对值是1.400000,-2.700000的绝对值是2.700000

扩展资料:

其他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]

温馨提示:答案为网友推荐,仅供参考
相似回答