C# 在c语言中如何将小数点四舍五入为整数#

C# 在c语言中如何将小数点四舍五入为整数#,c#,C#,我正在生成十进制数,例如: 0.8235294117647058823529411765 0.1764705882352941176470588235 我想把它们乘以10,然后四舍五入。如果点后的第二个数字小于5,则将其设置为0。否则,将其设置为1。对于上述示例,这将是: 8 2 结果应该放在一个int中,我认为它很简单 Math.Round(10 * your_decimal); 参考资料:如果希望将其保留为十进制或四舍五入到某个精度,则可以使用 decimal dec = 0.823529

我正在生成十进制数,例如:

  • 0.8235294117647058823529411765

  • 0.1764705882352941176470588235

  • 我想把它们乘以10,然后四舍五入。如果点后的第二个数字小于
    5
    ,则将其设置为
    0
    。否则,将其设置为
    1
    。对于上述示例,这将是:

  • 8

  • 2


  • 结果应该放在一个
    int

    中,我认为它很简单

    Math.Round(10 * your_decimal);
    
    参考资料:

    如果希望将其保留为
    十进制
    或四舍五入到某个精度,则可以使用

    decimal dec = 0.8235294117647058823529411765m;
    
    decimal rounded = Math.Round(dec * 10); // 8m
    
    decimal roundedToOne = Math.Round(dec * 10, 1); // 8.2m
    

    仅供参考,an是为
    decimal
    int
    定义的,因此您可以通过强制转换到
    int

    int a = (int)(dec * 10); // 8
    
    这可以与上下舍入数字的条件相结合

    decimal num = dec * 10;
    int a = (int)num + (num % 0 < .5m ? 0 : 1); // 8
    
    decimalnum=dec*10;
    int a=(int)num+(num%0<.5m?0:1);//8.
    
    So…
    Math.Round(n*10)
    。参考资料:,。这是一个很好的策略,在你问了一个问题后,看看“相关”侧栏------>在问这些问题之前先用谷歌搜索一下怎么样?我不能否决投票,因为我还没有125的声誉,但一旦我这么做了,我会否决它…哈哈!!关闭为重复确实,但关闭为过于本地化?你在开玩笑吧?这是一个关于四舍五入的问题。@DanielImms:是的。然后乘以10。疯狂的基础和无用的。舍入部分显然是重复的,而乘法部分只是一般的参考。这将截断数字,不是吗?啊,是的,我会把它修好。