欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

C语言(C++)中:详解floor函数、ceil函数和round函数

程序员文章站 2024-02-27 17:20:21
...

C语言中

1.floor函数

功能:把一个小数向下取整
      即就是如果数是2.2 ,那向下取整的结果就为2.000000
原型:double floor(doube x);
    参数解释:
        x:是需要计算的数
返回值:
    成功:返回一个double类型的数,此数默认有6位小数
    无失败的返回值
头文件:#include<math.h>

示例
floor函数计算后的结果为double类型的:

#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int main()
{
    double i = floor(2.2);
    double j = floor(-2.2);
    printf("The floor of 2.2 is %f\n", i);
    printf("The floor of 2.2 is %f\n", j);
    system("pause");
    return 0;
}

运行结果:
C语言(C++)中:详解floor函数、ceil函数和round函数
floor函数把转换后的结果强转为int类型的:

#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int main()
{
    int i = floor(2.2);
    int j = floor(2.7);
    printf("i=%d,j=%d\n", i, j);
    system("pause");
    return 0;
}

运行结果:
C语言(C++)中:详解floor函数、ceil函数和round函数
ps:把计算结果强转为int后,会丢失精度

2.ceil函数

功能:把一个小数向上取整
      即就是如果数是2.2 ,那向上取整的结果就为3.000000
原型:double ceil(doube x);
    参数解释:
        x:是需要计算的数
返回值:
    成功:返回一个double类型的数,此数默认有6位小数
    无失败的返回值
头文件:#include<math.h>

示例
ceil函数计算的结果为double类型的:

#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int main()
{
    double i = ceil(2.2);
    double j = ceil(-2.2);
    printf("The ceil of 2.2 is %f\n", i);
    printf("The ceil of 2.2 is %f\n", j);
    system("pause");
    return 0;
}

运行结果:
C语言(C++)中:详解floor函数、ceil函数和round函数

ceil函数把计算后的结果强转为int类型的:

#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int main()
{
    int i = ceil(2.2);
    int j = ceil(2.7);
    printf("i=%d,j=%d\n", i, j);
    system("pause");
    return 0;
}

运行结果:
C语言(C++)中:详解floor函数、ceil函数和round函数

3.round函数

功能:把一个小数四舍五入
      即就是如果数是2.2 ,那四舍五入的结果就为2
           如果数是2.5,那结果就是3
原型:double round(doube x);
    参数解释:
        x:是需要计算的数
头文件:#include<math.h>

示例

round函数的计算结果为double类型的:

#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int main()
{
    double i = round(2.2);
    double x = round(2.7);
    double j = round (-2.2);
    double y = round(-2.7);
    printf("The round of 2.2 is %f\n", i);
    printf("The round of 2.7 is %f\n", x);
    printf("The round of -2.2 is %f\n", j);
    printf("The round of -2.7 is %f\n", y);
    system("pause");
    return 0;
}

运行结果:
C语言(C++)中:详解floor函数、ceil函数和round函数

C++中

1.floor函数

#include<iostream>
using namespace std;
int main()
{
    double i = floor(2.2);
    double j = floor(-2.2);
    cout << "The floor of 2.2 is " << i << endl;
    cout << "The floor of -2.2 is " << j << endl;
    system("pause");
    return 0;
}

运行结果:
C语言(C++)中:详解floor函数、ceil函数和round函数

2.ceil函数

#include<iostream>
using namespace std;
int main()
{
    double i = ceil(2.2);
    double j = ceil(-2.2);
    cout << "The ceil of 2.2 is " << i << endl;
    cout << "The ceil of -2.2 is " << j << endl;
    system("pause");
    return 0;
}

运行结果:
C语言(C++)中:详解floor函数、ceil函数和round函数

3.round函数

#include<iostream>
using namespace std;
int main()
{
    double i = round(2.2);
    double x = round(2.7);
    double j = round(-2.2);
    double y = round(-2.7);
    cout << "The round of 2.2 is " << i << endl;
    cout << "The round of 2.7 is " << x << endl;
    cout << "The round of -2.2 is " << j << endl;
    cout << "The round of -2.7 is " << y << endl;
    system("pause");
    return 0;
}

运行结果:
C语言(C++)中:详解floor函数、ceil函数和round函数

相关标签: round floor ceil

上一篇: iOS-round、ceil、floorf函数

下一篇: