目录
1、计算绝对值
计算整数的绝对值:
//定义
int abs( int n );
long abs( long n );
long long abs( long long n );
//用法
int main()
{
int nA = 5, nB = -6;
nA = std::abs(nA);
std::cout << nA << std::endl;//5
nB = std::abs(nB);
std::cout << nB << std::endl;//6
}
计算浮点数的绝对值:
//定义
float abs( float arg );
double abs( double arg );
long double abs( long double arg );
float fabs ( float arg );
float fabsf( float arg );
double fabs ( double arg );
long double fabs ( long double arg );
long double fabsl( long double arg );
//用法
int main()
{
float fA = -5.5;
double dB = -9.5;
float fC = -5.25;
double dD = -3.21;
fA = std::abs(fA);
std::cout << fA << std::endl;//5.5
dB = std::abs(dB);
std::cout << dB << std::endl;//9.5
fC = std::fabs(fC);
std::cout << fC << std::endl;//5.25
dD = std::fabs(dD);
std::cout << dD << std::endl;//3.21
}
2、计算某数的给定次幂
//定义
float pow ( float base, float exp );
float powf( float base, float exp );
double pow ( double base, double exp );
long double pow ( long double base, long double exp );
long double powl( long double base, long double exp );
float pow ( float base, int iexp );
double pow ( double base, int iexp );
long double pow ( long double base, int iexp );
//用法
int main()
{
//求3的2次方
double dParam1 = 3;
int nParam2 = 2;
double dRt = std::pow(3,2);//第一个参数必须为浮点型
std::cout << dRt << std::endl;//9
}
3、计算平方根
//定义
float sqrt ( float arg );
float sqrtf( float arg );
double sqrt ( double arg );
long double sqrt ( long double arg );
long double sqrtl( long double arg );
//用法
int main()
{
//求4的平方根
double dParam = 4;
double dRt = std::sqrt(dParam);//参数必须为浮点型
std::cout << dRt << std::endl;//2
}
4、计算立方根
//定义
float cbrt ( float arg );
float cbrtf( float arg );
double cbrt ( double arg );
long double cbrt ( long double arg );
long double cbrtl( long double arg );
//用法
int main()
{
//求8的立方根
double dParam = 8;
double dRt = std::cbrt(dParam);//参数必须为浮点型
std::cout << dRt << std::endl;//2
}
5、计算正弦
sinα = 对边 比 斜边
//定义
float sin ( float arg );
float sinf( float arg );
double sin ( double arg );
long double sin ( long double arg );
long double sinl( long double arg );
6、计算余弦
sinα = 邻边 比 斜边
//定义
float cos ( float arg );
float cosf( float arg );
double cos ( double arg );
long double cos ( long double arg );
long double cosl( long double arg );
7、计算正切
sinα = 对边 比 邻边
//定义
float tan ( float arg );
float tanf( float arg );
double tan ( double arg );
long double tan ( long double arg );
long double tanl( long double arg );
8、计算反正弦
通过正弦值求弧度。
//定义
float asin ( float arg );
float asinf( float arg );
double asin ( double arg );
long double asin ( long double arg );
long double asinl( long double arg );
9、计算反余弦
通过余弦值求弧度。
//定义
float acos ( float arg );
float acosf( float arg );
double acos ( double arg );
long double acos ( long double arg );
long double acosl( long double arg );
10、计算反正切
通过正切值求弧度。
//定义
float atan ( float arg );
float atanf( float arg );
double atan ( double arg );
long double atan ( long double arg );
long double atanl( long double arg );
11、计算整数相除的商和余数
//定义
std::div_t div( int x, int y );
std::ldiv_t div( long x, long y );
std::lldiv_t div( long long x, long long y );
//用法
int main()
{
//求整数相除的商和余数
std::div_t rt = std::div(10,3);
std::cout << "商:" << rt.quot << " 余数:" << rt.rem << std::endl;//商:3 余数:1
}
12、返回两个浮点数的较大者
比较两个浮点数,返回较大值。
//定义
float fmax ( float x, float y );
float fmaxf( float x, float y );
double fmax ( double x, double y );
long double fmax ( long double x, long double y );
long double fmaxl( long double x, long double y );
//用法
int main()
{
//返回两个浮点数的较大值
double dValue1 = 2.5686100;
double dValue2 = 2.5686300;
double dRt = std::fmax(dValue1, dValue2);//2.5686300000000002
}
13、返回两个浮点数的较小者
比较两个浮点数,返回较小值。
//定义
float fmin ( float x, float y );
float fminf( float x, float y );
double fmin ( double x, double y );
long double fmin ( long double x, long double y );
long double fminl( long double x, long double y );
14、计算两个浮点数的正数差
计算两个浮点数的正数差。
//定义
float fdim ( float x, float y );
float fdimf( float x, float y );
double fdim ( double x, double y );
long double fdim ( long double x, long double y );
long double fdiml( long double x, long double y );
//用法
int main()
{
//计算两个浮点数的正数差
std::cout << "std::fdim(4.2,1.1) " << std::fdim(4.2,1.1) << std::endl;//std::fdim(4.2,1.1) 3.1
std::cout << "std::fdim(1.1, 4.2) " << std::fdim(1.1, 4.2) << std::endl;//std::fdim(1.1, 4.2) 0
std::cout << "std::fdim(4.2,-1.1) " << std::fdim(4.2, -1.1) << std::endl;//std::fdim(4.2,-1.1) 5.3
std::cout << "std::fdim(1.1, -4.2) " << std::fdim(1.1, -4.2) << std::endl;//std::fdim(1.1, -4.2) 5.3
}
15、计算 x 与 y 平方和的平方根
float hypot ( float x, float y );
float hypotf( float x, float y );
double hypot ( double x, double y );
long double hypot ( long double x, long double y );
long double hypotl( long double x, long double y );
float hypot ( float x, float y, float z );
double hypot ( double x, double y, double z );
long double hypot ( long double x, long double y, long double z );