Считать вещественные числа из .txt файла - C (СИ)
Формулировка задачи:
#include<stdio.h> #include<stdlib.h> int main() { int k,i; FILE *ptrfile; k=0; double s; ptrfile=fopen("C:\\Users\\users\\Desktop\\mass.txt","r+"); while ((fscanf(ptrfile, "%g",&s)!=EOF)) { if(!ptrfile) break; k+=1; } double c[1000]; rewind(ptrfile); for(i=0;i<k;i++) { fscanf(ptrfile, " %g",&c[i]); printf("c[%d]=%g ",i,c[i]); } fclose(ptrfile); free(c); getchar(); return 0; }
Решение задачи: «Считать вещественные числа из .txt файла»
textual
Листинг программы
#include <stdio.h> #include <stdlib.h> int main() { int k,i; FILE *ptrfile; k=0; float s; ptrfile=fopen("input.txt","r"); while ((fscanf(ptrfile, "%f",&s)!=EOF)) { if(!ptrfile) break; k+=1; } float c[1000]; rewind(ptrfile); for(i=0;i<k;i++) { fscanf(ptrfile, " %f",&c[i]); printf("c[%d]=%g ",i,c[i]); } fclose(ptrfile); getchar(); return 0; }
Объяснение кода листинга программы
В этом коде:
- Включаются необходимые заголовочные файлы.
- Определяются переменные:
- k - счётчик;
- i - счётчик;
- ptrfile - указатель на файл;
- s - переменная для чтения вещественных чисел из файла.
- Открывается файл
input.txt
для чтения. - В цикле while с помощью функции fscanf считываются вещественные числа из файла и сохраняются в переменной s.
- Если файл закончился, то условие while прекращается.
- Выделяется память под массив из 1000 элементов типа float.
- В цикле for с помощью функции fscanf считываются вещественные числа из файла и сохраняются в соответствующем элементе массива c.
- Каждое считанное число выводится на экран.
- Файл закрывается.
- Ожидается нажатие любой клавиши.
- Программа возвращает 0, что означает успешное завершение.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д