為什么結(jié)果等于3
#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;
}
2019-07-19
舉報(bào)
2019-07-19
c/d=3/4,c和d都是int型,算出來雖然結(jié)果是零點(diǎn)幾,但結(jié)果依然為int型,所以等于0。1+2+0=3
2019-07-19
result = a+? b? +c /d;? 賦值符號(hào)優(yōu)先級(jí)比較低。先進(jìn)行運(yùn)算。整形運(yùn)算c/d==0,所以右邊等于3。result是雙精度,所以發(fā)生隱式轉(zhuǎn)換,結(jié)果為3.000000。