各种math函数

fabs()绝对值函数

#include<stdio.h>
#include<math.h>
int main(){
    double db=-12.56;
    printf("%.2f
", fabs(db));
    return 0;
}

floor()向下取整;ciel()向上取整

不管四舍五入,向上取整必+1

#include<stdio.h>
#include<math.h>
int main(){
    double db1=-5.2, db2=5.2;
    printf("%.0f %.0f
", floor(db1),ceil(db1));
    printf("%.0f %.0f
", floor(db2),ceil(db2));
    return 0;
}

pow(double n,double, m)n的m次方

n和m必须都是double类型

#include<stdio.h>
#include<math.h>
int main(){
    double db=pow(2.0,3.0);
    printf("%f
",db);
    return 0;
}

sqrt(double r)求一个double类型变量的算术平方根

#include<stdio.h>
#include<math.h>
int main(){
    double db=sqrt(2.0);
    printf("%f
",db);
    return 0;
}

log(double x)求一个double类型变量的以e为底的对数,即lnx

C语言中没有对任意底数求对数的函数,所以需要使用lnx的换底公式

#include<stdio.h>
#include<math.h>
int main(){
    double db=log(2.0);
    printf("%f
",db);
    return 0;
}

round(double x)对double类型变量四舍五入成整数,小数位为0,此时还是double类型,需要强制类型转换将其变为int类型

#include<stdio.h>
#include<math.h>
int main(){
    double db1=round(3.40);
    double db2=round(3.45);
    double db3=round(3.50);
    double db4=round(3.55);
    double db5=round(3.60);
    printf("%d %d %d %d %d
",(int)db1,(int)db2,
          (int)db3,(int)db4,(int)db5);
    return 0;
}
原文地址:https://www.cnblogs.com/Lynn-2019/p/12051076.html