浮点数向零舍入
题目描述
输入一个双精度浮点数,将其向零舍入到整数。说明:向零舍入的含义是,正数向下舍入,负数向上舍入。
输入格式
一个双精度浮点数 xx。
输出格式
一个整数,即向零舍入到整数的结果。
代码逻辑是:
输入一个浮点数 a。
如果 a 是正数,取其向下取整(floor)并存入 b(long long 类型)。
如果 a 是负数,取其向上取整(ceil)并存入 b。
输出 b。
#include<iostream> //引入iostream库,才能使用输入输出流,cin和cout
#include <cmath> // 包含 floor() 和 ceil() 的声明
using namespace std; //引入 std 命名空间
double a; // 声明一个双精度浮点数 a
long long b; // 声明一个长整型变量 b(64位整数)
int main() {
cin >> a; // 输入 a
if (a > 0.0) { // 如果 a 是正数
b = floor(a); // 向下取整(例如 3.7 → 3)
cout << b; // 输出 b
}
else { // 如果 a 是 0 或负数
b = ceil(a); // 向上取整(例如 -2.3 → -2)
cout << b; // 输出 b
}
return 0;
}