如何用C ++计算a / b?

时间:2016-10-18 22:15:28

标签: c++

我正在尝试获得a / b的值,但我总是为'/ b'得到'0'。

为什么我得到a / b = 0?

#include <iostream>
using namespace std;

int main()
{
  int a,b;
  cout << "Give a and b" << endl;
  cin >> a >> b;
  double q=a/b;
  cout << "a/b=" << q;
  return 0;
}

2 个答案:

答案 0 :(得分:2)

您正在使用整数运算,因此除法结果将是整数。在将其分配给q变量之前,在解释为整数时,0到1之间的浮点值将被截断为0。所以:

  1. 将您的ab变量更改为double而不是int

  2. 分裂期间
  3. 类型转换a和/或bdouble

  4. 无论哪种方式,您将执行浮点除法而不是整数除法,因此结果将是浮点值。

答案 1 :(得分:1)

可以改为double q=double(a)/b;