C#把double转换位小数点后带有4位的小数 怎么表示

 我来答
小星星教育知识分享
高粉答主

2019-11-24 · 用教师的智慧点燃学生的智慧火花
小星星教育知识分享
采纳数:202 获赞数:67134

向TA提问 私信TA
展开全部

String.Format("{0:N1}",a)保留小数点后一位

String.Format("{0:N2}",a)保留小数点后两位

String.Format("{0:N3}",a)保留小数点后三位

C#保留小数位N位四舍五入

doubles=0.55555;

result=s.ToString("#0.00");//点后面几个0就保留几位

C#保留小数位N位四舍五手档入

doubledbdata=0.55555;

stringstr1=dbdata.ToString("f2");//fN保留N位,四舍五入

扩展资料

C#Double保留小数点后面位数

Doublesalary1=10000.0;

Doublesalary2=10000.12345;

Doublesalary3=10000.1289;

Intsalary4=10000;

stringsalary5="10000";

stringsalary6="10000.12345";

stringsalary7="10000.1289"

Convert.ToDouble(salary1).ToString("0.00");//保留小数点后两位,结果为10000.00

Convert.ToDouble(salary2).ToString("0.00");//保留小数点后两位,结果为10000.12

Convert.ToDouble(salary3).ToString("0.00");//保留小数点后两毁薯戚位,结果为10000.13

Convert.ToDouble(salary4).ToString("0.00");//保留小数点后两位,结果为10000.00

Convert.ToDouble(salary5).ToString("0.00");//保留小数点后两纤陵位,结果为10000.00

Convert.ToDouble(salary6).ToString("0.00");//保留小数点后两位,结果为10000.12

Convert.ToDouble(salary7).ToString("0.00");//保留小数点后两位,结果为10000.13

旅初彤2B
推荐于2017-12-16 · TA获得超过2.6万个赞
知道大有可为答主
回答量:4.4万
采纳率:65%
帮助的人:5343万
展开全部
1.System.Globalization.NumberFormatInfo provider = new System.Globalization.NumberFormatInfo();
provider.NumberDecimalDigits =intDecLength; //要设定的小数位数
double strCashAmt=Convert.ToDouble(this.txtCashAmt.Text); //先把控件内的值转成double

this.txtCashAmt.Text = strCashAmt.ToString("N",provider); //再利用ToString函数格式化小数位数

2.保留N位,四舍五入 .

decimal d= decimal.Round(decimal.Parse("0.55555"),4);

3.保留N位四舍五入

Math.Round(0.55555,4)

4,保留N位四舍五入
double dbdata = 0.55555;
string str1 = dbdata.ToString("f4");//fN 保留N位,四舍五入

5.保留N位四舍五入

string result = String.Format("{0:4}", 0.55555);//2位

string result = String.Format("{0:4}", 0.55555);//3位

6. 保留N位四舍五入此册森 (不森亩错)

double s=0.55555;
result=s.ToString("#0.0000");//点后面几个0就姿悉保留几位
追问
非常感谢 不四舍五入 怎么表示
追答
public void GetN()
{
int n = 4; //取小数点后4位
double a = 253.215486;
int b = a.ToString("0").Length; //整数一共3位
int c = a.ToString().Length; //a总长度为10位
int d = 0;
if (c > b)
{
d = c - b - 1; //小数点後面有多少位
}
if (n < d) //如果小数点后的位数大於要取的位数,就截取前b+1+n位 得到最後结果
{
string Last = a.ToString().Substring(0, b + 1 + n);
a = double.Parse(Last);
}
}
这个是不用四舍五入的
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lgao622
2015-09-25 · 知道合伙人软件行家
lgao622
知道合伙人软件行家
采纳数:1137 获赞数:6549
毕业于武汉工程大学邮电与信息工程学院通信专业,软件行业,4年工作经验。

向TA提问 私信TA
展开全部
class Program
    {
        private static void 碰扒野掘Main(string[] args)
        {
        笑脊昌    Console.WriteLine("double : {0:N4}", 12.85);
            Console.ReadKey();
        }
    }
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式