使双变量低于1

use*_*124 2 c# asp.net integer-division

在我的ASP.NET项目中,我做了一个使用Application来保存投票的调查页面.制作百分比金额时遇到问题.我尝试了很多东西.这是我的代码中有问题的部分:

    double x = (count / sum) ;
    double f = (count1 / sum) ;
    double g = (count2 / sum) ;
    double h = (count3 / sum) ;
    if (sum > 0)
    {
        a = (int)x * 100;
        b = (int)f * 100;
        c = (int)g * 100;
        d = (int)h * 100;
    }
Run Code Online (Sandbox Code Playgroud)

我使用断点并发现问题出现在双变量中:(count/sum)无论如何都等于0.

spe*_*der 7

我假设countsum是整数类型.

2个整数除法的结果是截断的整数.

你需要将除法的一侧转换为a double,然后结果将是double

所以

((double)count)/sum
Run Code Online (Sandbox Code Playgroud)