C语言基础问题 算术运算符与表达式

答案是D不确定,算术运算符不应该是从左至又吗?18/4得4, 4*4.0 得16.0, 16.0/8得2.0。
结果不应该是浮点型吗。

img

肯定是浮点型,但具体是float还是double,不确定

因为算式中有4.0,所以肯定会提升为浮点型,float是单精度浮点型,double是双精度浮点型,对于这种情况,不同的编译器可能处理方式不一样,所以结果是float还是double类型就不确定了。一般会由程序员来定义变量的类型来接收这个数值