C语言6大常用标准库 -- 4.<math.h>

server/2024/9/23 4:36:57/

目录

引言

4. C标准库--math.h

4.1 简介

4.2 库变量

4.3 库宏

4.4 库函数

 4.5 常用的数学常量


🌈你好呀!我是 程序猿

🌌 2024感谢你的陪伴与支持 ~

🚀 欢迎一起踏上探险之旅,挖掘无限可能,共同成长!


引言

        C 语言是一种通用的、面向过程式的计算机程序设计语言。1972 年,为了移植与开发 UNIX 操作系统,丹尼斯·里奇在贝尔电话实验室设计开发了 C 语言。

        C 语言是一种广泛使用的计算机语言,它与 Java 编程语言一样普及,二者在现代软件程序员之间都得到广泛使用。

        C 标准库(C Standard Library)包含了一组头文件,这些头文件提供了许多函数和宏,用于处理输入输出、字符串操作、数学计算、内存管理等常见编程任务。

4. C标准库--math.h

4.1 简介

       math.h 头文件定义了各种数学函数和一个宏。在这个库中所有可用的功能都带有一个 double 类型的参数,且都返回 double 类型的结果。

       <math.h> 是 C 标准库中的一个头文件,包含了大量用于数学运算的函数和宏。这些函数和宏提供了基本的算术运算、三角函数、指数函数、对数函数、幂函数、舍入函数等。

       <math.h> 提供了一系列的数学函数和常量,帮助程序员在 C 语言中进行各种数学计算。通过使用这些函数和常量,可以轻松实现复杂的数学运算,从而提高程序的效率和可读性。

4.2 库变量

<stdio.h> 中定义的变量类型
N0.变量 & 描述
1-

4.3 库宏

<stdio.h> 中定义的宏
N0.宏 & 描述
1

HUGE_VAL

当函数结果溢出时返回的值(正无穷大)。此宏代表一个非常大的双精度浮点数,通常用来作为某些数学函数在结果超出可表示范围时的返回值。当一个函数的结果太大以至于无法用正常的浮点数表示(即发生上溢)时,会设置 errno 为 ERANGE(范围错误),并返回 HUGE_VAL 或其负值(对于负无穷大)。

2

HUGE_VALF

当函数结果溢出时返回的值(正无穷大,浮点型)

3

HUGE_VALL

当函数结果溢出时返回的值(正无穷大,长双精度)

4

INFINITY

正无穷大

5

NAN

非数字值(Not-A-Number)

6

FP_INFINITE

表示无穷大

7

FP_NAN

表示非数字值

8

FP_NORMAL

表示正常的浮点数

9

FP_SUBNORMAL

表示次正规数

10

FP_ZERO

表示零

4.4 库函数

<stdio.h> 中定义的库函数
N0.函数 & 描述
1double acos(double x)
返回以弧度表示的 x 的反余弦。
2double asin(double x)
返回以弧度表示的 x 的反正弦。
3double atan(double x)
返回以弧度表示的 x 的反正切。
4double atan2(double y, double x)
返回以弧度表示的 y/x 的反正切。y 和 x 的值的符号决定了正确的象限。
5double cos(double x)
返回弧度角 x 的余弦。
6double cosh(double x)
返回 x 的双曲余弦。
7double sin(double x)
返回弧度角 x 的正弦。
8double sinh(double x)
返回 x 的双曲正弦。
9double tanh(double x)
返回 x 的双曲正切。
10double exp(double x)
返回 e 的 x 次幂的值。
11double frexp(double x, int *exponent)
把浮点数 x 分解成尾数和指数。返回值是尾数,并将指数存入 exponent 中。所得的值是 x = mantissa * 2 ^ exponent。
12double ldexp(double x, int exponent)
返回 x 乘以 2 的 exponent 次幂。
13double log(double x)
返回 x 的自然对数(基数为 e 的对数)。
14double log10(double x)
返回 x 的常用对数(基数为 10 的对数)。
15double modf(double x, double *integer)
返回值为小数部分(小数点后的部分),并设置 integer 为整数部分。
16double pow(double x, double y)
返回 x 的 y 次幂。
17double sqrt(double x)
返回 x 的平方根。
18double ceil(double x)
返回大于或等于 x 的最小的整数值。
19double fabs(double x)
返回 x 的绝对值。
20double floor(double x)
返回小于或等于 x 的最大的整数值。
21double fmod(double x, double y)
返回 x 除以 y 的余数。

 4.5 常用的数学常量

<stdio.h> 中常用的数学常量
M_PI3.14159265358979323846圆周率 π
M_E2.71828182845904523536自然对数的底数 e
M_LOG2E1.44269504088896340736log2(e)
M_LOG10E0.43429448190325182765log10(e)
M_LN20.69314718055994530942    ln(2)
M_LN102.30258509299404568402    ln(10)
M_PI_21.57079632679489661923    π/2
M_PI_40.78539816339744830962    π/4
M_1_PI0.31830988618379067154    1/π
M_2_PI0.63661977236758134308    2/π
M_2_SQRTPI1.12837916709551257390    2/√π
M_SQRT21.41421356237309504880√2
M_SQRT1_20.707106781186547524401/√2


  ​期待批评指正,共同进步~


http://www.ppmy.cn/server/120625.html

相关文章

Java 入门指南:JVM(Java虚拟机)——类的生命周期与加载过程

文章目录 类的生命周期类加载过程1&#xff09;载入&#xff08;Loading&#xff09;2&#xff09;验证&#xff08;Verification&#xff09;文件格式验证符号引用验证 3&#xff09;准备&#xff08;Preparation&#xff09;4&#xff09;解析&#xff08;Resolution&#xf…

前端-js:轮播图

学校官网都会有图片轮播&#xff0c;包括自动轮播及手动切换。 1. 原理&#xff1a; 在有限的区域内展示图片。 整个图片部分是一个胶卷 &#xff0c;当哪个图片在窗口位置展示哪个图片。 自动轮播&#xff1a;每隔一段时间调相对位置。 2. 实现 $1. 放5张图片 <div c…

深度学习:(六)激活函数的选择与介绍

激活函数 之前使用的 a σ ( z ) a\sigma(z) aσ(z) &#xff0c;其中 σ ( ) \sigma(~) σ( ) 便是激活函数。 在神经网络中&#xff0c;不同层的激活函数可以不同。 在学习中&#xff0c;一般以 g ( z ) g(z) g(z) 来表示激活函数。 为什么需要(线性)激活函数&#xff…

C语言 | Leetcode C语言接雨水II

题目&#xff1a; 题解&#xff1a; typedef struct{int row;int column;int height; } Element;struct Pri_Queue; typedef struct Pri_Queue *P_Pri_Queue; typedef Element Datatype;struct Pri_Queue{int n;Datatype *pri_qu; };/*优先队列插入*/ P_Pri_Queue add_pri_que…

网页与微信小程序:一场轻量化应用的博弈

网页与微信小程序&#xff1a;一场轻量化应用的博弈 在如今的信息时代&#xff0c;移动互联网已然成为主流&#xff0c;而在这一趋势的驱动下&#xff0c;应用形态也在不断演变。微信小程序与传统网页&#xff0c;作为两种不同的应用形态&#xff0c;正如两条并行却又交织的道…

Facebook直播限流是什么原因?是ip地址导致的吗

随着社交媒体和直播行业的蓬勃发展&#xff0c;Facebook直播已成为众多企业和个人进行品牌推广、产品展示和互动交流的重要平台。然而&#xff0c;在享受直播带来的便利与效益的同时&#xff0c;不少用户也面临着直播限流的困扰。本文将探讨Facebook直播限流的原因&#xff0c;…

2.个人电脑部署MySQL,傻瓜式教程带你拥有个人金融数据库!

2.个人电脑部署MySQL&#xff0c;傻瓜式教程带你拥有个人金融数据库&#xff01; ‍ 前边我们提到&#xff0c;比较适合做量化投研的数据库是MySQL&#xff0c;开源免费。所以今天我就写一篇教程来教大家如何在自己的环境中部署MySQL。 在不同的设备或系统中安装MySQL的步骤…

基于51单片机的汽车倒车防撞报警器系统

目录 一、主要功能 二、硬件资源 三、程序编程 四、实现现象 一、主要功能 本课题基于微控制器控制器&#xff0c; 设计一款汽车倒车防撞报警器系统。 要求&#xff1a; 要求&#xff1a;1.配有距离&#xff0c; 用于把车和障碍物之间的距离信号送入控制器。 2.配有报警系…