處理的順序是什么?
#include <stdio.h>
int main()
{
? ? int a,b,c,d;
? ? int result;
? ? a = 1;
? ? b = 2;
? ? c = 3;
? ? d = 4;
? ? result = a * b * c - d; ? ?//在這里體驗(yàn)哦~
? ? printf("%f\n", result);
? ? return 0;
}
為什么結(jié)果是0.000000?
#include <stdio.h>
int main()
{
? ? int a,b,c,d;
? ? int result;
? ? a = 1;
? ? b = 2;
? ? c = 3;
? ? d = 4;
? ? result = a * b * c - d; ? ?//在這里體驗(yàn)哦~
? ? printf("%f\n", result);
? ? return 0;
}
為什么結(jié)果是0.000000?
2017-12-28
舉報(bào)
2018-05-24
支持樓上的O(∩_∩)O哈哈~
2018-01-25
因?yàn)槟愕膔esult是int類型,但是要輸出的卻是float類型(%f),類型不匹配,默認(rèn)設(shè)置結(jié)果為0.000000。
如果真要輸出float類型,那就強(qiáng)制類型轉(zhuǎn)換一下:printf("%f\n",(float)result);//結(jié)果就是2.000000了。
2017-12-28
先括號里后括號外,先乘除后加減,先運(yùn)算符后賦值再判斷。
result = a * b * c - d=1*2*3-4=2