C++ 1/2与1.0/2与1/2.0

#include <iostream>
using namespace std;
int main( )
{
double a,b,c,s;
a = 3;
b=4;
c=5;
s = 1/2 * (a+b+c);
cout<<"s="<<s<<endl;
return 0;
}

为什么要把1/2改为1.0/2或者1/2.0才能得到0.5的结果

1/2 都是整型。。最后的结果也应该是整型(向0取整。1/2=0)

1.0/2或者1/2.0 属于不同数据类型之间的运算,程序会将结果的数据类型转化为float型。。。追问

但“/”这个符号不是取商么?变成浮点型,没有余数的?

追答

我说的结果就是商。。。
1/2 在你的理解里面应该是0.5 但计算机会向0取整,就是0...(这里只能得到整型的结果)
还有余数?。。求余数用 %这个运算符。。/ 这个运算符没有余数这个概念。。。。

温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网