搞不懂運算先后
#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;
}
為什么這個輸出是-3.000000
難道這個里面不是先乘除后加減嗎
#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;
}
為什么這個輸出是-3.000000
難道這個里面不是先乘除后加減嗎
2021-04-26
舉報
2021-04-26
先后數學里有的跟數學一樣,/是除后取整,除肯定先算的啊。
2021-04-26
#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;? ? //這里b/c,因為都是整數型,所以b/c=0.結果自然為a-d=-3了。
? ? printf("%f\n", result);
? ? return 0;
}