精慕门7364706
2019-07-19 08:34
#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;
}
c/d=3/4,c和d都是int型,算出来虽然结果是零点几,但结果依然为int型,所以等于0。1+2+0=3
result = a+ b +c /d; 赋值符号优先级比较低。先进行运算。整形运算c/d==0,所以右边等于3。result是双精度,所以发生隐式转换,结果为3.000000。
C语言入门
926207 学习 · 20797 问题
相似问题