Floats are not precise enough and both 1.3 and 0.1 can not be accurately represented. By default the AMXX %f formatting will not round this small error away and will thus result in a 1.39999 being output (which is technically correct).
Your floatadd workaround does nothing, it is the %.1f formatting that "fixes" the issue. You can easily verify this using a small C program and printing the same numbers with something like %.12f so the numbers don't get rounded by the library.