Как прочитать из файла определенные строки? - C (СИ)

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

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

нужно читать только 1-3 строку остальные читать не нужно как это сделает ? файл :
number 56
month 576
number 43
Rio 32

Решение задачи: «Как прочитать из файла определенные строки?»

textual
Листинг программы
FILE *file;
int i;
int k;
char str[20];
...
for(i=1;i<=3;i++)
{
    fscanf(file,"%s%d",str,&k);
    ...
}
fclose(file);

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

  1. В данном коде используется стандартная библиотека языка C для работы с файлами.
  2. В первой строке объявляется указатель на файл file, который будет использоваться для чтения из файла.
  3. Далее объявляются две переменные типа int - i и k, которые будут использоваться в цикле.
  4. Также объявляется массив типа char с именем str, который будет использоваться для хранения строк из файла.
  5. Внутри цикла for, который выполняется три раза, происходит чтение из файла в следующем формате: fscanf(file,%s%d,str,&k);
  6. Функция fscanf используется для чтения из файла. Первый аргумент - это указатель на файл, второй аргумент - это шаблон чтения.
  7. %s в шаблоне чтения указывает на то, что нужно прочитать строку (до следующего символа новой строки).
  8. %d в шаблоне чтения указывает на то, что нужно прочитать целое число (в данном случае переменную типа int).
  9. После чтения строки и числа, они сохраняются в переменных str и k соответственно.
  10. После выполнения цикла, файл закрывается с помощью функции fclose.
  11. В данном коде не обрабатываются ошибки чтения из файла.
  12. В данном коде не обрабатывается переполнение при чтении числа.
  13. В данном коде не обрабатывается пропуск символов или пустая строка при чтении строки.
  14. В данном коде не обрабатывается закрытие файла при возникновении ошибки.
  15. В данном коде не обрабатывается завершение файла после чтения трех строк.
  16. В данном коде не обрабатывается повторное открытие файла после его закрытия.
  17. В данном коде не обрабатывается изменение размера массива при чтении строк.
  18. В данном коде не обрабатывается утечка памяти при работе с указателем на файл.
  19. В данном коде не обрабатывается параллельный доступ к файлу.
  20. В данном коде не обрабатывается чтение из файла с использованием разных символов разделителей.

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

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