C语言程序:关于程序的第六行,为什么用t=2.0*i不用t=2*i
答案:5 悬赏:70 手机版
解决时间 2021-02-24 13:54
- 提问者网友:斑駁影
- 2021-02-24 06:15
C语言程序:关于程序的第六行,为什么用t=2.0*i不用t=2*i
最佳答案
- 五星知识达人网友:轮獄道
- 2021-02-24 07:43
在这里并不影响结果。
但是有的时候,是会影响结果的,例如:
float s;
int x=5;
s = 2/x; // s=0;
s = 2.0/x; // s = 0.4;
所以为了养成一个好习惯
可以写成2.0会避免出现差错
但是有的时候,是会影响结果的,例如:
float s;
int x=5;
s = 2/x; // s=0;
s = 2.0/x; // s = 0.4;
所以为了养成一个好习惯
可以写成2.0会避免出现差错
全部回答
- 1楼网友:北方的南先生
- 2021-02-24 12:09
因为整型和浮点型相乘的浮点型,整型和整型相乘的整型
- 2楼网友:玩家
- 2021-02-24 10:48
2 * i 看作是 int,而 2.0 * i 会看作是 double
- 3楼网友:北方的南先生
- 2021-02-24 10:12
因为t是double型变量,这样避免了类型强制转换
- 4楼网友:平生事
- 2021-02-24 08:50
你后面有一个除号(/t*t),如果前面是2*t,整个表达式不是做除法,而是取结果的商,而结果的商就是一个整数,虽然你定义成double型,但是输出会是一个整型的数,所以必须是2.0*t,这样就变成小数除以整数的形式,得到的就是一个小数,也就是一个确切的值
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯