当前位置:主页 > 软件编程 > C代码 >

C++详细讲解常用math函数的用法

时间:2022-07-28 11:01:47 | 栏目:C代码 | 点击:

包含头文件

#include<cmath>

1、fabs(double x)

对double型变量取绝对值

#include<iostream>
using namespace std;
#include<cmath>
int main()
{
    double d=-3.14;
    printf("%.2f\n",fabs(d));
    return 0;
}

2、floor(double x)ceil(double x)

用于double型变量,返回类型也为double

向下取整:floor

向上取整:ceil

#include<iostream>
using namespace std;
#include<cmath>
int main()
{
    double d1=-3.14;
    double d2=3.14;
    printf("%.0f  %.0f\n",floor(d1),ceil(d1));
    printf("%.0f  %.0f\n",floor(d2),ceil(d2));
    return 0;
}

-4 -3

3 4

3、pow(double x,double n)

返回x的n次方

#include<iostream>
using namespace std;
#include<cmath>
int main()
{
    double d=pow(2.0,3.0);
    printf("%f\n",d);
    return 0;
}

8.000000

4、sqrt(double x)

返回double型变量的算术平方根

#include<iostream>
using namespace std;
#include<cmath>
int main()
{
    double d=sqrt(3.0);
    printf("%f\n",d);
    return 0;
}

5、log(double x)

返回以自然对数e为底的对数

#include<iostream>
using namespace std;
#include<cmath>
int main()
{
    double d=log(exp(1));//exp(1)表示e
    printf("%f\n",d);
    double d1=log10(10.0);
    printf("%f\n",d1);
    double d2=log2(2);
    printf("%f\n",d2);
    double d3=log1p(10);//更精确
    printf("%f\n",d3);
    double d4=log(10);
    printf("%f\n",d4);
    return 0;
}

1.000000

1.000000

1.000000

2.397895

2.302585

6、sin(double x)cos(double x) tan(double x)

参数要求是弧度制

也有对应的反函数

#include<iostream>
using namespace std;
#include<cmath>
const double PI=acos(-1.0);//因为cos(pi)=-1
int main()
{
    double d=sin(PI/4);
    printf("%f\n",d);
    double d1=cos(PI/4);
    printf("%f\n",d1);
    double d2=tan(PI/4);
    printf("%f\n",d2);
    double d3=asin(1);
    printf("%f\n",d3);
    double d4=atan(1);
    printf("%f\n",d4);
    return 0;
}

7、round(double x)

将double型变量四舍五入取整,返回也是double

您可能感兴趣的文章:

相关文章