一.头文件cmath.h或math.h中包含的常用数学函数,使用时要头文件引用,两者区别:
1.cmath是标准C++里面推荐使用的库。
math是C语言的旧头文件.
2.用后面那个就好 math.h,前面那个如果没有C++对应的库会出错
用后面的一定不会出错.
二.常用的数学函数:
1.开平方
double sqrt(double x);
2.求常数e的x次方
double exp(double x);
3.求x的y次方
double pow(double x, double y);
4.求对数ln(x)
double log(double x);
求对数lg(x)
double log10(double x);
其他用换底公式
5.求x绝对值
int abs(x);
long int abs(long int x);
double fabs(double x);
6.取整函数
向上取整 : ceil(x)返回的是大于x的最小整数。
double ceil(double x);
如:ceil(10.5) == 11 ceil(-10.5) ==-10
向下取整 : floor(x) 返回的是小于或等于x的最大整数。
double floor(double x);
如:floor(10.5) == 10 floor(-10.5) == -11
fix (x)
朝零方向取整,如fix(-1.3)=-1; fix(1.3)=1;
round (x)
四舍五入到最近的整数,如round(-1.3)=-1;round(-1.52)=-2;round(1.3)=1;round(1.52)=2
7.产生随机数 0~32767
int rand(void);
8.取整与取余
double modf (double value, double* iptr); 将参数的整数部分通过指针回传, 返回小数部分,将双精度数value分解成尾数和阶
double fmod (double x, double y); 返回两参数相除的余数 , 返回x/y的余数
9.三角函数
求正弦
double sin(double x);
求余弦
double cos(double x);
求正切
double tan(double x);
反正切
double atan(double x);
10.反三角函数
double asin (double); 结果介于[-PI/2, PI/2]
double acos (double); 结果介于[0, PI]
double atan (double); 反正切(主值), 结果介于[-PI/2, PI/2]
double atan2 (double, double); 反正切(整圆值), 结果介于[-PI/2, PI/2]
11. π的表示
const double pi = acos(-1.0);
12.三角形 , 任意两边之和大于第三边
if(a+b>c&&a+c>b&&c+b>a)
13. 闰年的判断
if(n%400==0||n%4==0&&n%100==0)能被4整除并且能被100整除或者能被400整除