2. 数学函数(math.h)
为了方便数学计算,C 语言标准库中提供和常用的数学函数。
头文件
math.h
常用的数学函数:
函数
说明
三角函数
double sin(double x);正弦(x 是弧度)
double cos(double x);余弦(x 是弧度)
double tan(double x);正切(x 是弧度)
double asin(double x);反正弦,返回值范围 [-pi/2, pi/2]
double acos(double x);反余弦,返回值范围 [0, pi]
double atan(double x);反正切,返回值范围 [-pi/2, pi/2]
指数和对数函数
double sqrt(double x);求平方根
double pow(double x, double y);幂运算,返回 x 的 y 次方。
double exp(double x);返回 e 的 x 次幂
double log(double x);自然对数
double log10(double x);求以 10 为底 x 的对数
其它函数
double fabs(double x);求 x 的绝对值
double ceil(double x);x 向上取整
double floor(double x);x 向下取整
double fmod(double x, double y);浮点数求余数
示例:
// filename: math.c
#include <stdio.h>
#include <math.h>
#define PI (3.14159265)
int main(int argc, char * argv[]) {
printf("sin(0): %f\n", sin(0));
printf("cos(PI/4): %f\n", cos(PI/4)); // cos(45°)
printf("sqrt(9.0): %f\n", sqrt(9.0)); // 求 9 的平方根
printf("log10(1000): %f\n", log10(1000));
return 0;
}
编译和运行结果如下:
weimingze@mzstudio:~$ gcc -o math math.c
weimingze@mzstudio:~$ ./math
sin(0): 0.000000
cos(PI/4): 0.707107
sqrt(9.0): 3.000000
log10(1000): 3.000000
练习:
写一个程序,输入一个角度(0 ~ 360),返回这个角度的正弦值,余弦值,正切值。
注意:需要将角度转换成弧度再求值。