C#中小数点后保留两位小数,四舍五入的函数及使用方法

Math.Round(45.367,2)     //Returns   45.37
Math.Round(45.365,2)     //Returns   45.36

C#中的Round()不是我们中国人理解的四舍五入,是老外的四舍五入,是符合IEEE标准的四舍五入,具体是四舍六入,下面的才是符合中国人理解的四舍五入

Math.Round(45.367,2,MidpointRounding.AwayFromZero);//45.37

Math.Round(45.365,2,MidpointRounding.AwayFromZero)     //Returns   45.37   
Double dValue = 95.12345;

int iValue = 10000;
string strValue = "95.12345";
string result = "";

result = Convert.ToDouble(dValue).ToString("0.00");//保留小数点后两位,结果为95.12
result = Convert.ToDouble(iValue).ToString("0.00");//10000.00
result = Convert.ToDouble(strValue).ToString("0.00");//95.12

result = Convert.ToDouble(dValue).ToString("P");//得到小数点后2位的百分比,自动 加上%号;//9512.35%
result = Convert.ToDouble(strValue).ToString("f4");//保留小数点后4位;  //95.1235
//要注意的一点是 Convert.ToDouble一定要是这种双精度的,不然会报错。
时间: 2024-11-14 22:27:56

C#中小数点后保留两位小数,四舍五入的函数及使用方法的相关文章

BigDecimal的用法详解(保留两位小数,四舍五入,数字格式化,科学计数法转数字,数字里的逗号处理)

转自:https://blog.csdn.net/ochangwen/article/details/51531866 一.简介 Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算.双精度浮点型变量double可以处理16位有效数.在实际应用中,需要对更大或者更小的数进行运算和处理.float和double只能用来做科学计算或者是工程计算,在商业计算中要用java.math.BigDecimal.BigDecimal所创建的是对象,我们不

JS保留两位小数 四舍五入函数

js 四舍五入函数 toFixed(),里面的参数 就是保留小数的位数. 1 <script language="javascript"> 2 document.write("<h1>JS保留两位小数例子</h1><br>"); 3 var a=2.1512131231231321; 4 document.write("原来的值:"+a+"<br>"); 5 docu

sql 保留两位小数+四舍五入

1. ROUND(该函数,只是负责四舍五入到两位小数,但是不负责截断 只留两位小数,例如下例:) 关于ROUND函数,我们平常理解为4舍5入,如: print ROUND(13.145, 2); 结果为:13.150 2. 使用转换类型,才能达到保留两位小数位的目的: select cast(13.145 as   decimal(10,   2)) 结果为:13.15 2. 拼接%号: concat(cast(13.145 as   decimal(10,   2)),'%');结果为:13.

java数字保留两位小数四舍五入

import java.math.BigDecimal; import java.text.DecimalFormat; import java.text.NumberFormat; public class format { double f = 111231.5585; public void m1() { BigDecimal bg = new BigDecimal(f); double f1 = bg.setScale(2, BigDecimal.ROUND_HALF_UP).doubl

一球从M米高度自由下落,每次落地后返回原高度的一半,再落下。 它在第N次落地时反弹多高?共经过多少米? 保留两位小数

题目描述 输入 M N 输出 它在第N次落地时反弹多高?共经过多少米? 保留两位小数,空格隔开,放在一行 样例输入 1000 5 样例输出 31.25 2875.00 代码:#include<stdio.h>int main(){    double M,sum=0;    int N,i;    scanf("%lf%d",&M,&N);    sum=M;    for(i=2;i<=N;i++)    {                 M=M/

java使double保留两位小数的多方法 java保留两位小数

这篇文章主要介绍了java使double类型保留两位小数的方法,大家参考使用吧 复制代码 代码如下: mport java.text.DecimalFormat; DecimalFormat    df   = new DecimalFormat("######0.00"); double d1 = 3.23456  double d2 = 0.0;double d3 = 2.0;df.format(d1); df.format(d2); df.format(d3); 3个结果分别为:

C# 版本的 计时器类:精确到微秒 秒后保留一位小数 支持年月日时分秒带单位的输出

class TimeCount { // 临时变量,存放当前类能表示的最大年份值 private static ulong MaxYear = 0; /// <summary> /// 获取毫秒能表示的最大年份数 /// </summary> /// <returns>年份数最大值</returns> public static ulong GetMaxYearCount() { if (TimeCount.MaxYear != 0) return Time

SQL 保留两位小数的实现方式

问题: 客户要求,跟金额相关的数据,打印出来要保留两位小数,比如:13.2/13.200要显示为13.20: 分析: 首先查看数据库中的数据定义,均为decimal(12,2) ,直接通过数据库查询的结果也会保留两位小数,但是代码处理后,却会忽略掉最后一个“零”位. 此处有两个解决方案: 一. 代码中处理,检测到为金额字段,做特殊处理:二.修改查询SQL语句去规避此问题: 第一种方法,无论通过数据类型还是字段名称,都不好判断是否为金额,故选用第二种方法. SQL中保留两位小数的方法有三种,(第2

乘法运算保留两位小数

jq下进行乘法运算: var num=accMul(0.123,2.21);//0.27183 num=decimal(num,2);//0.27 //精确乘法运算 function accMul(arg1,arg2){ var m=0,s1=arg1.toString(),s2=arg2.toString(); try{m+=s1.split(".")[1].length}catch(e){} try{m+=s2.split(".")[1].length}catc