21xrx.com
2024-09-20 05:41:50 Friday
登录
文章检索 我的文章 写文章
C++向下取整(舍去小数)
2023-07-05 08:15:36 深夜i     --     --
C++ 向下取整 舍去小数

在C++中,对于一个浮点数进行整数转换时,有时候需要对其进行向下取整或者向上取整。其中,向下取整就是把小数部分直接舍去,只保留整数部分,而向上取整则是把小数部分上取,就是直接进位到下一个整数。

在C++中,进行向下取整可以使用floor函数,其定义如下:

double floor(double x);

其中x为需要进行向下取整的浮点数,返回值为一个小于或等于x的最大整数值。如下代码示例:


#include<iostream>

#include<cmath>

using namespace std;

int main() {

  double x = 3.5;

  double y = 4.1;

  cout << floor(x) << endl; // 输出3

  cout << floor(y) << endl; // 输出4

  return 0;

}

从上面的代码可以看出,当对3.5和4.1进行向下取整时,结果分别为3和4。

需要注意的是,在使用floor函数时,需要包含头文件cmath。如果不包含则会出现“未声明的标识符”错误。

除此之外,还有一个函数可以进行向下取整,即int函数。其定义如下:

int int(double x);

其中x为需要进行向下取整的浮点数,返回值为x的整数部分(不是四舍五入,而是直接截取整数部分,如果是负数则向下取整)。如下代码示例:


#include<iostream>

using namespace std;

int main() {

  double x = 3.5;

  double y = 4.1;

  cout << int(x) << endl; // 输出3

  cout << int(y) << endl; // 输出4

  return 0;

}

从上面的代码可以看出,在使用int函数进行向下取整时,结果与floor函数完全相同。

总之,在C++中进行浮点数的向下取整,可以使用floor函数或者int函数,其效果相同,可以根据需要进行选择。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复