我正在编写一个简单的c语言函数,用于返回两个浮点值的中间值。
我的函数如下:
float mid(float a, float b) {
return (a + b)*0.5;
}
问题在于这个函数总是会产生0.000000。我通过以下方式进行检查:
printf("%f", mid(2,5))
这将会打印出 0.000000。
然而,如果我只是这样做:
printf("%f", (2+5)*0.5)
这将打印出3.5,这是正确的。
我该如何解决这个问题?