【问题标题】:How can round a number in c# [duplicate]如何在c#中舍入一个数字[重复]
【发布时间】:2021-10-23 23:30:20
【问题描述】:

我有这样的价值观

1.5
2.6
2.499
10.5
11.4999

我想要这个

 2
 3
 2
11
11

这怎么可能 在 C# 中

C#代码

    private void textBox1_TextChanged(object sender, EventArgs e)
    {
        textBox2.Text= Math.Round(Convert.ToDecimal(textBox1.Text)).ToString();

    }

输出错误 价值观

1.5 结果 2 正确

1.4 结果 1 正确

10.5 结果 10,错了 结果应该是 11

【问题讨论】:

  • 您在将10.5 转换为10 之前使用Convert.ToDecimal() 进行舍入,请改用Convert.ToDouble()
  • 同样的问题我想喜欢输入 10.5 输出 11 但它不起作用它返回 10 如果我输入 10.6 那么它很好并返回 11。

标签: c# rounding


【解决方案1】:

使用Math.Round(1.5);函数,它将数字四舍五入到最接近的整数。

【讨论】:

  • 不适用于 10.5
  • 请将您的代码添加到问题中,这是不可能的
  • 代码已添加,请检查
猜你喜欢
  • 2019-11-14
  • 1970-01-01
  • 2010-11-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-05-30
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多