為什么結(jié)果不是-11.500000?
#include?<stdio.h> int?main() { ????int?a,b,c,d; ????double?result; ????a?=?1; ????b?=?2; ????c?=?3; ????d?=?4; ????result?=?a/b-c*d; ????printf("%f\n",?result); ????return?0; }
#include?<stdio.h> int?main() { ????int?a,b,c,d; ????double?result; ????a?=?1; ????b?=?2; ????c?=?3; ????d?=?4; ????result?=?a/b-c*d; ????printf("%f\n",?result); ????return?0; }
2015-09-26
舉報(bào)
2015-09-26
因?yàn)榈忍?hào)右側(cè)的表達(dá)式 a / b - c * d 中的a b c d都是整型,整型間的加減乘除運(yùn)算的結(jié)果還是整型,所以等號(hào)右側(cè)的表達(dá)式的值還是整型,也就是不包含小數(shù)部分的。
那么雖然你的result是浮點(diǎn)型,但用整型來(lái)初始化它,它也是不會(huì)有小數(shù)部分的。
2015-12-03
把int a, b, c, d;改成float a, b, c, d;就可以了