数学函数

C语言中的数学函数 (math.h)

C语言标准库通过 math.h 头文件提供了丰富的数学计算函数。使用前必须引入该头文件:#include <math.h>。

1. 函数类型后缀(float / long double 版本)

默认的数学函数(如 sqrt、ceil)处理的是 double 类型。

  • 末尾加 f:处理 float 类型(如 ceilf()、sqrtf())。
  • 末尾加 l:处理 long double 类型(如 ceill()、sqrtl())。

2. 数值计算函数(表 2-11)

常用基础数学函数如下:

函数操作说明示例(x=2.25)
floor(x)向下取整(不大于x的最大整数)floor(2.25) → 2
ceil(x)向上取整(不小于x的最小整数)ceil(2.25) → 3
fabs(x)返回x的绝对值fabs(-2.25) → 2.25
log(x)自然对数(底为 e)–
log10(x)常用对数(底为 10)–
exp(x)返回 e^x 的值–
sqrt(x)返回x的平方根sqrt(2.25) → 1.5
pow(x, y)返回 x^y 的幂值pow(2, 3) → 8.0

代码示例:

#include <stdio.h>
#include <math.h>

int main(void)
{
    double x = 2.25;
    double less = floor(x); // 2.0
    double more = ceil(x);  // 3.0
    double root = sqrt(x);  // 1.5
    
    printf("floor: %.0lf\n", less); 
    printf("ceil: %.0lf\n", more);
    printf("sqrt: %.2lf\n", root);
    return 0;
}Code language: PHP (php)

3. 三角函数(表 2-12)与弧度转换

常用三角函数:

函数操作说明
sin(x)x(弧度值)的正弦
cos(x)x 的余弦
tan(x)x 的正切

重要规则:参数需为弧度值。

角度转弧度公式:弧度 = 角度 / 180.0 * π。

(注:原文中“180度为1弧度”为口误,实际应为π弧度=180度,即 180度对应约 3.14159 弧度)。

代码示例与纠错:

原文示例中变量名 consine 拼写错误,且求余弦应调用 cos() 函数:

#include <stdio.h> 
#include <math.h>

int main(void)
{
    double angle = 45.0;
    double pi = 3.14159265;
    double radian = pi * angle / 180.0; // 角度转弧度
    
    double sine = sin(radian);    // 正确调用正弦
    double cosine = cos(radian);  // 正确调用余弦,变量名修正为 cosine
    
    printf("sin(45) = %.2lf\n", sine);
    printf("cos(45) = %.2lf\n", cosine);
    return 0;
}Code language: PHP (php)

4. 扩展函数

按需学习的高级函数:

  • 反三角函数:asin()(反正弦)、acos()(反余弦)、atan()(反正切)。
  • 双曲函数:sinh()、cosh()、tanh()。

Previous:
Next:

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注