Тип float неверно работает - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Писал код, запустил, неправильный результат. Через некоторое время понял, что проблемы с типом float. Написал вот это, для проверки
Листинг программы
  1. #include <stdio.h>
  2. #include <cstdlib>
  3. int main(void)
  4. {
  5. float a;
  6. scanf("%f", &a);
  7. printf("%.4f\n", a);
  8. system("pause");
  9. return 0;
  10. }
Если ввожу, например, 3.21, то отображает просто 3.00, то есть дробную часть выкидывает. Как исправить ?

Решение задачи: «Тип float неверно работает»

textual
Листинг программы
  1. #include <stdio.h>
  2. #include <cstdlib>
  3. #include <locale.h> /* Для русского языка */
  4.    
  5. int main(void)
  6. {
  7.         float a=3.21;    
  8.         setlocale(LC_ALL,"Russian");
  9.         printf("%.4f\n", a);
  10.  
  11.         setlocale(LC_ALL,"English");
  12.         printf("%.4f\n", a);
  13.         system("pause");
  14.         return 0;
  15. }

Объяснение кода листинга программы

  1. Подключение необходимых библиотек для работы с русским языком и для работы сprintf.
  2. Объявление переменной типа float с именем a и значением 3.21.
  3. Установка локали на русский язык.
  4. Вывод значения переменной a с точностью до 4 знаков после запятой.
  5. Установка локали на английский язык.
  6. Вывод значения переменной a с точностью до 4 знаков после запятой.
  7. Ожидание нажатия клавиши для выхода из программы.
  8. Возвращение значения 0, что означает успешный конец работы программы.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4.2 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы