The AVR scanf() functions most certainly do NOT support floating point by default.
(You can add it as described here: sprintf for floats to AVR cpu request: avr boards.txt enhancement by sprintf/scanf menu options about float formatting by default · Issue #8574 · arduino/Arduino · GitHub )
(Other CPU types are more ambiguous. The problem is that the nature of printf/scanf is such that if you use it AT ALL, it will suck in all the format supports. If that includes floating point, you'll end up with a goodly amount of the floating point math libraries. Probably fine if you're on a larger AVR and are using floating point anyway, but not good on a small avr with a program that doesn't even use floats.)