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

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

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

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

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

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

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

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

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


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

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

15   голосов , оценка 4.2 из 5
Похожие ответы