c# - 将字符串格式化为小数点后 1 位,不向上/向下舍入

标签 c# string

我想要一个传递整数的函数,如果该整数超过某个值(在我当前的情况下为 1000),我想对其执行一些除法,以便最终返回原始整数的缩写。

例如:

1000 = 1
1001 = 1
1099 = 1
1100 = 1.1
1199 = 1.1
1200 = 1.2
10000 = 10
10099 = 10
10100 = 10.1

事物的除法和舍入方面一直给我带来问题。

最适合给我上述结果的方法是什么?

最佳答案

怎么样:

int dividedBy100 = x / 100; // Deliberately an integer division
decimal dividedBy1000 = dividedBy100 / 10m; // Decimal division
string result = dividedBy1000.ToString();

我建议在这里使用decimal,而不是floatdouble,因为您基本上希望十进制除以10。

关于c# - 将字符串格式化为小数点后 1 位,不向上/向下舍入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7311179/

相关文章:

c# - 64 位 P/Invoke 特质

java - 使用字符串作为参数的问题

c - 递归函数中的逻辑错误

c# - 从类/对象列表中查找匹配字符串

c# - 如何以编程方式更改 Word 2010 文档的布局?

c# - 我的迭代是永远的。寻找更好的方法

c# - 在不闪烁的情况下在双缓冲控件上重新绘制图像时出现问题

c# - 如何增加 ASMX Web 服务的 POST 大小?

c++ - 如何设置类的 char* 成员?使用 strcat 或其他东西?

c++ - 查找重叠子串的多个匹配项