C# 确定一美元金额的20%,结果为十进制
需要帮助将结果转换为十进制 我需要确定一美元金额的20%,以便我可以将其与另一个金额进行比较,以找到两者中较大的一个。简单的东西,但我正在努力获得一个十进制格式的结果 我到目前为止C# 确定一美元金额的20%,结果为十进制,c#,C#,需要帮助将结果转换为十进制 我需要确定一美元金额的20%,以便我可以将其与另一个金额进行比较,以找到两者中较大的一个。简单的东西,但我正在努力获得一个十进制格式的结果 我到目前为止 double foo = (.20 / 100) * 326.23; 上面的表达式给了我0.65246 但我需要的是美元金额或小数点65.246 下一步是什么 您正在用.2除以100 您只需将0.2*326.23乘以两次,即从数字中删除100,首先将20%转换为.20,然后再次使用/100。当然,你会得到一个100
double foo = (.20 / 100) * 326.23;
上面的表达式给了我0.65246
但我需要的是美元金额或小数点65.246
下一步是什么 您正在用.2除以100
您只需将0.2*326.23乘以两次,即从数字中删除100,首先将20%转换为.20,然后再次使用/100。当然,你会得到一个100倍于你预期的数字。两件事;答案一个接一个地说你只需要乘以。第二,对于货币金额,您应该使用实际类型
decimal
,而不是double
,因为您永远无法从double
中获得准确金额,下一步将从double foo=(.20/100)*326.23中达到65.246
将其乘以100,但我不太擅长。只需去掉/100,毕竟它是百分比-你还应该添加家庭作业标记为什么不将其乘以0.2???当使用需要以10为基数精度的财务数据或值时,请为作业使用适当的类型:decimal
。在处理美元和美分时,不要使用float
或double
。