Напечатать все строки текстового файла, длина которых меньше заданного числа - C (СИ)
Формулировка задачи:
2.Дан текстовый файл. Напечатать все строки, длина которых меньше заданного числа. Помогите, пожалуйста
Решение задачи: «Напечатать все строки текстового файла, длина которых меньше заданного числа»
textual
Листинг программы
#include <stdio.h> #include <string.h> #define N 255 int main(void) { FILE *in; char buf[N], *name="C:\\in.txt"; int c; printf("Chislo: "); scanf("%d", &c); if((in=fopen(name, "r"))==NULL)return 1; while(fgets(buf, N, in)!=NULL) { if(strlen(buf)<c)printf("%s\n", buf); } fclose(in); return 0; }
Объяснение кода листинга программы
- Подключение необходимых библиотек для работы с файлами и строками
- Объявление константы N, которая определяет максимальное количество символов в строке buf
- Объявление переменных:
- in — указатель на файл, который будет использоваться для чтения содержимого файла
- buf — массив символов, в который будет записываться строка из файла
- name — строка, содержащая путь к файлу, который необходимо открыть
- c — переменная для хранения числа, введенного пользователем, в байтах
- Вывод сообщения с просьбой ввести число
- Считывание числа с помощью функции scanf
- Проверка открытия файла с помощью функции fopen
- Если файл не удалось открыть, то программа возвращает 1
- Чтение файла по строкам с помощью цикла while и функции fgets
- Если длина строки меньше числа c, то эта строка выводится на экран
- Закрытие файла с помощью функции fclose
- Возвращение 0, что означает успешное выполнение программы
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д