The answer should be else if becAuse decimal numbers are by default double so 0.5 is considered as double well the initialization should be as float x = 0.5f though, But it won't give any error but comparison of x with 0.5 will return false and else if will be printed.
yea its true as its compiler dependent.