0

在我的代码中,我无法得到正确的划分,我不知道为什么

例如,我有;

int N =5;
int df = 2;
double value = N/df;

当我使用前面的代码时,我得到 value = 2 ,我需要 return 2.5

4

4 回答 4

3

您可以将其中一个参数转换为双精度:

  int N = 5;
  int df = 2;
  double value = ((double)N)/df;

或者您可以最初将 N 和/或 df 声明为 Double

  double N = 5;
  double df = 2;
  double value = N/df;
于 2013-07-01T09:42:03.587 回答
1

一个 int 划分另一个 int 给你一个 int。两者之一应该是双重的。这将起作用:

double N =5.0;
double df = 2.0;
double value = N/df;

这将起作用:

double N =5;
int df = 2;
double value = N/df;
于 2013-07-01T09:41:47.287 回答
0

您也可以将任何双精度值添加到计算中

double N =5;
double df = 2;
double value = N*1.0/df;
于 2013-07-01T09:45:03.623 回答
0
try this......

int N =5;
int df = 2;
double value = (double) N/df;
于 2013-07-01T09:45:30.563 回答