0

我有一个 47 的 double 值。我将它除以 60,但是当我尝试打印它时它显示 0.0000。
它应该显示 0.7858

我怎样才能做到这一点?有什么帮助吗?

这是我的代码:

int minutes = decimal * 60;
float min = (minutes)/60;
NSLog(@"%.4f",min);
4

2 回答 2

2

尝试这个 :

double decimal = 47.0 / 60.0;     // Just so minutes is 47
double minutes = decimal * 60.0;
double min = minutes / 60.0;
NSLog(@"%.4f",min);

在 Objective C(以及 C 和 C++)中,当左右操作数都是整数时应用整数除法,因此minutes / 60 = 0. 如果要进行浮点运算,请使用浮点文字。

于 2012-07-26T07:53:11.160 回答
0

尝试这个:

  int minutes = 40;
  float min = (minutes * 1.0f)/60.0f;
  NSLog(@"%.4f",min);

或者

  int minutes = 40;
  float min = (float)minutes/60.0f;
  NSLog(@"%.4f",min);
于 2012-07-26T07:52:34.700 回答