Why returns C# Convert.ToDouble(5/100) 0.0 and not 0.05

前端 未结 7 1815
深忆病人
深忆病人 2020-12-06 18:52
double variable = Convert.ToDouble(5/100);

Will return 0.0 but i expected 0.05

What can / must i change to get 0.05

because the 5 i

7条回答
  •  南方客
    南方客 (楼主)
    2020-12-06 19:03

    5/100 is integer arithmetic. In order to have double precision one or more of the values need to be doubles.

    double result = 5.0/100.0;  
    double result = 5.0/100;  
    double result = 5/100.0;  
    double result = (double)5/100;  
    double result = 5/(double)100;
    

    or

    double numerator = 5;  
    double denominator = 100;  
    double result = numerator / denominator;
    

提交回复
热议问题