c++输出不是小数floata;a=5/18;cout<<a;得出的结果为什么是0,而不是小数?
答案:2 悬赏:10
解决时间 2021-12-13 18:23
- 提问者网友:恋你成殇
- 2021-12-13 13:38
c++输出不是小数floata;a=5/18;cout<<a;得出的结果为什么是0,而不是小数?
最佳答案
- 二级知识专家网友:恕我颓废
- 2021-12-13 14:57
因为5,18都是整数,所以5/18的结果也是按整数处理的,商为0,结果就是0,虽然最后赋值给了float类型,但在赋值之前,运算的结果已经是0了。
正确的写法:
a = 5.0 /18;
或a=(float)5/18;
或a=1.0*5/18;
这样,数据都会被转换为浮点类型进行计算,结果就正确了。
正确的写法:
a = 5.0 /18;
或a=(float)5/18;
或a=1.0*5/18;
这样,数据都会被转换为浮点类型进行计算,结果就正确了。
全部回答
- 1楼网友:厌今念往
- 2021-12-13 16:20
搜一下:c++ 输出不是小数 float a; a=5/18; cout<
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯