- C标准库
- C库 - 首页
- C库 - <assert.h>
- C库 - <complex.h>
- C库 - <ctype.h>
- C库 - <errno.h>
- C库 - <fenv.h>
- C库 - <float.h>
- C库 - <inttypes.h>
- C库 - <iso646.h>
- C库 - <limits.h>
- C库 - <locale.h>
- C库 - <math.h>
- C库 - <setjmp.h>
- C库 - <signal.h>
- C库 - <stdalign.h>
- C库 - <stdarg.h>
- C库 - <stdbool.h>
- C库 - <stddef.h>
- C库 - <stdio.h>
- C库 - <stdlib.h>
- C库 - <string.h>
- C库 - <tgmath.h>
- C库 - <time.h>
- C库 - <wctype.h>
C库 - fabs() 函数
C语言math库的fabs()函数接受类型为double的参数(x),返回x的绝对值。此函数在<math.h>头文件中定义,用于计算浮点数的绝对值。
语法
以下是C库fabs()函数的语法:
double fabs(double x)
参数
此函数只接受一个参数:
x − 这是浮点值。
返回值
此函数返回x的绝对值。
示例
以下是C库程序,用于演示fabs()函数。
#include <stdio.h> #include <math.h> int main () { int a, b; a = 1234; b = -344; printf("The absolute value of %d is %lf\n", a, fabs(a)); printf("The absolute value of %d is %lf\n", b, fabs(b)); return(0); }
输出
以上代码产生以下结果:
The absolute value of 1234 is 1234.000000 The absolute value of -344 is 344.000000
示例
下面的程序计算浮点数的绝对值。这里,我们有两种类型的绝对值:正数和负数,当这些值传递给fabs()函数时,它将显示结果。
#include <stdio.h> #include <math.h> int main() { double a = 9801.0; double b = -1831.0; double res; res = fabs(a); printf("The absolute value of %.3lf is %.3lf\n", a, res); res = fabs(b); printf("The absolute value of %.3lf is %.3lf\n", b, res); return 0; }
输出
执行以上代码后,我们得到以下结果:
The absolute value of 980.000 is 980.000 The absolute value of -1231.000 is 1231.000
示例
这里,我们计算长双精度数的近似绝对值。近似数的结果可以使用公式tanh = (1.0 + tanh(x / 2.0)) * (1.0 - tanh(x / 2.0)来识别。
#include <stdio.h> #include <math.h> long double my_exp(long double x) { return (1.0 + tanh(x / 2.0)) * (1.0 - tanh(x / 2.0)); } int main() { long double a = -6.546; long double b = 5.980; double res; res = fabs(a); printf("The absolute value of %.3Lf is %.3lf\n", a, res); res = fabs(b); printf("The absolute value of %.3Lf is %.3lf\n", b, res); return 0; }
输出
执行以上代码后,我们得到以下结果:
The absolute value of -6.546 is 6.546 The absolute value of 5.980 is 5.980
广告