Вывод числа с плавающей точкой - C (СИ)
Формулировка задачи:
Приветствую. Есть такая простая задачка, но не могу разобраться. Суть задачи: Есть текстовый файл с вещественными числами в форме с фиксированной точкой, нужно преобразовать его в файл с вещественными с плавающей точкой с двумя числами в мантиссе. По-идее все просто, но не работает. Считывает числа нормально, а выводит нули или близкие к нему значения. Помогите, что не так? Документацию на printf листал, форум тоже смотрел, не разобрался.
#include <stdio.h> #include <conio.h> #include <stdlib.h> int schet(int n) { int count = 1; while (n = n / 10) count++; return count; } void modifi(FILE *in, FILE *out) { float a, b; while (!feof(in)) { fscanf(in, "%f", &a); //тут считывает нормально, видно при пошаговом прогоне кода printf("%.2e ", &a); //тут уже нули fprintf(out, "%.2e ", &a); // и тут нули } } int main() { FILE * in; if ((in = fopen("f:\\in.txt", "rt")) == 0) { printf("ERROR"); } FILE * out = fopen("f:\\out.txt", "wt"); modifi(in, out); _getch(); }
Решение задачи: «Вывод числа с плавающей точкой»
textual
Листинг программы
printf("%.2e ", a); //тут уже нули fprintf(out, "%.2e ", a); // и тут нули
Объяснение кода листинга программы
В данном коде происходит вывод числа с плавающей точкой в формате научной нотации с двумя знаками после запятой. Список действий следующий:
- printf или fprintf вызывается для вывода числа с плавающей точкой.
- %.2e - это форматная строка, которая указывает как должен выглядеть вывод числа. %.2e означает, что число должно быть представлено в формате научной нотации с двумя знаками после запятой.
- a - это переменная, значение которой будет выводиться. Вывод:
- printf или fprintf вызывается для вывода числа с плавающей точкой.
- %.2e - это форматная строка, которая указывает как должен выглядеть вывод числа. %.2e означает, что число должно быть представлено в формате научной нотации с двумя знаками после запятой.
- a - это переменная, значение которой будет выводиться. Следовательно, в данном коде происходит вывод числа с плавающей точкой в формате научной нотации с двумя знаками после запятой.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д