使用整数和浮点数

时间:2017-06-28 15:13:07

标签: floating-point int

为什么当我的所有输入都是整数时,使用float而不是int会给我不同的结果?

   {

  int a = 17, b = 5;
  int c =  a/b;
  cout<<c;

  }

  {

  float a = 17, b = 5;
  float c;
  c = a/b;
  cout<<c;
  }

2 个答案:

答案 0 :(得分:2)

这与价值无关。浮点类型变量将其值保持为浮点数,即使您为其指定了整数值也是如此。因此,如果您将 17 分配给浮点变量,则您的变量会将此值保存为 17.0 并执行任何操作根据浮点运算。

答案 1 :(得分:0)

/运算符执行的除法是不同的。

如果两者都是整数,

c = a / b; 

将执行整数除法,因此17/5 --> 3

如果两者都是双打,

c = a / b;

将执行浮点除法,因此17.0/5.0 --> 3.4