【发布时间】:2016-07-15 22:48:15
【问题描述】:
我是 C++ 新手,我尝试了这个简单的代码:
#include<iostream>
#include<math.h>
using namespace std;
int main(){
double a;
a=1/6;
cout<<a;
}
但结果是 0。据我了解,double 应该适用于实数,所以结果不应该是 1/6 还是 0.1666666?谢谢!
【问题讨论】:
-
不是
double进行除法时,是int。后来,当您将其分配给 double 时,它变成了double。使用1.0/6.0,它将按您的意愿工作。此外,1.0/6和1/6.0也可以使用。 -
因此你是新人:不要习惯
using namespace std;! -
另外,使用 c++ 标准头文件,因此,使用
#include <cmath>。
标签: c++ double implicit-conversion integer-arithmetic