C语言a*b⼀c 和 a⼀c*b 的运算结果

int a=5, c=2; float b=1.0;
2025-12-17 06:31:03
推荐回答(5个)
回答1:

*/乘除优先级相同吧,所以是从左到右依次运算
a*b/c是5*1.0/2=2.5,因为b是float型的,所以返回时float小数,也就是5.0/2那么是2.5
a/c*b是5/2*1.0,那么5/2都是int型,那么返回的也是int型,取整数,应该是2,在乘以1.0那么结果是2.0

回答2:

结果当然是不同的,a*b/c中,因为b是float型的,所以a*b也是float型的。而a/c*b中,因为a和c都是int型的,所以a/c会把小数点舍去,结果也是int型的,再乘以b,那结果肯定就不同了

回答3:

两个整数相乘或相除,结果仍然为整数,比如5/2=2;如果两个数中有一个是小数,或两个都是小数,则运算结果为小数,比如5.0/2=2.5。这个题的结果是什么就不用说了吧

回答4:

a*b/c =5*1.0/2=5.0/2=2.0

a/c*b=5/2*1.0=2*1.0=2.0
好像是这样,类型装换问题吧.

回答5:

依次运算。有问题吗?