百分比为0或100

时间:2014-08-19 16:27:20

标签: c#

我无法理解为什么这只会返回0或100.

decimal TotalUptimePercent;
TotalUptimePercent = (uptime / (uptime + downtime)) * 100;
MessageBox.Show("Uptime: " + TotalUptimePercent.ToString());

我尝试过使用double而不是decimal,但这也不起作用。

我确实查看了该网站并发现了其他一些关于使用小数推荐的百分比的帖子,但对我来说不起作用。

1 个答案:

答案 0 :(得分:7)

如果uptimedowntimeint或类似,请尝试

double TotalUptimePercent = (uptime / (uptime + (double)downtime)) * 100;

请参阅/ Operator

  

分割两个整数时,结果始终为整数。例如,7/3的结果是2。