C# Math.Ceiling方法向上取整和Math.Floor方法向下取整

Math.Ceiling方法向上取整

  1. 用于对指定的双精度浮点值进行向上取整。这意味着它会返回大于或等于指定数字的最小整数。如果数字是整数,则Math.Ceiling将返回该整数本身。
csharp 复制代码
double number1 = 3.13;
double number2 = 5.0;
double number3 = -2.72;

double result1 = Math.Ceiling(number1);
double result2 = Math.Ceiling(number2);
double result3 = Math.Ceiling(number3);  
  
// 输出:result1= Ceiling of 3.13 is 4  
// 输出:result2 = Ceiling of 5 is 5  
// 输出:result3 = Ceiling of -2.72 is -2  
  1. 如果向上取整并想保留特定数量的小数点呢?那么需要先乘以 10的n次方,n 代表保留几位小数,如下
csharp 复制代码
//要保留1位小数
double number1 = 3.13;
//要保留2位小数
double number2 = 4.357;
//要保留2位小数
double number3 = -7.337;

double result1 = Math.Ceiling(number1 * Math.Pow(10, 1)) / 10;
double result2 = Math.Ceiling(number2 * Math.Pow(10, 2)) / 10 /10;
double result3 = Math.Ceiling(number3 * Math.Pow(10, 2)) / Math.Pow(10, 2);

// 输出:result1= 3.2 
// 输出:result2 = 4.36 
// 输出:result3 = -7.33  

Math.Floor方法向下取整,与上面的正好相反

csharp 复制代码
 double number1 = 3.13;
 double number2 = 5.0;
 double number3 = -2.72;

 double result1 = Math.Floor(number1);
 double result2 = Math.Floor(number2);
 double result3 = Math.Floor(number3);

 //输出: result1 = 3
 //输出: result2 = 5
 //输出: result3 = -3

以及保留小数点数

csharp 复制代码
//要保留1位小数
double number1 = 3.13;
//要保留2位小数
double number2 = 4.357;
//要保留2位小数
double number3 = -7.337;

double result1 = Math.Floor(number1 * Math.Pow(10, 1)) / 10;
double result2 = Math.Floor(number2 * Math.Pow(10, 2)) / 10 / 10;
double result3 = Math.Floor(number3 * Math.Pow(10, 2)) / Math.Pow(10, 2);

// 输出:result1= 3.1 
// 输出:result2 = 4.35 
// 输出:result3 = -7.34  
相关推荐
19H37 分钟前
Flink-Source算子状态恢复分析
c#·linq
枯萎穿心攻击3 小时前
响应式编程入门教程第二节:构建 ObservableProperty<T> — 封装 ReactiveProperty 的高级用法
开发语言·unity·c#·游戏引擎
Eiceblue4 小时前
【免费.NET方案】CSV到PDF与DataTable的快速转换
开发语言·pdf·c#·.net
昏睡红猹12 小时前
C#脚本化(Roslyn):如何在运行时引入nuget包
c#
张人玉12 小时前
C# 常量与变量
java·算法·c#
就是有点傻13 小时前
在C#中,可以不实例化一个类而直接调用其静态字段
c#
软件黑马王子13 小时前
C#系统学习第八章——字符串
开发语言·学习·c#
阿蒙Amon13 小时前
C#读写文件:多种方式详解
开发语言·数据库·c#
就是有点傻14 小时前
C#如何实现中英文快速切换
数据库·c#
一名用户18 小时前
unity实现梦日记式传送组件
后端·c#·unity3d