float означає число з плаваючою комою. В C тип даних поплавця використовується в тих випадках, коли точність загальної кількості цифр становить 7. Для, наприклад: - десяткової цифри. 12.3546987 не можна зберігати у плавці, оскільки в ньому є 9 цифр. Вихід буде показано як 12.354699, тобто перші 7 цифр будуть показані як введені на вході, а восьма цифра буде округлена. Тип поплавця може представляти значення в межах від приблизно 1,5 x 10 ^ (- 45) до 3,4 x 10 ^ (38). З точки зору розподілу пам’яті, float - це одноточний, 32-бітний тип даних з плаваючою точкою.
На відміну від поплавця, подвійний має точність від 15 до 16 цифр. Діапазон подвійних становить від 5,0 × 10 ^ (- 345) до 1,7 × 10 ^ (308). У плані розподілу байтів подвійний - це 64-бітні дані з плаваючою комою. тип.
Проблема виникає при його використанні.float або double не впливає на printf, але у випадку scanf використовується відповідний тип даних залежно від загального no. цифр у плаваючому немає. тобто читати з вхідних даних.
Отже, краща дубль над поплавком для більшої точності даних.
Сподіваюся, це допомагає.