• Предмет: Информатика
  • Автор: polinakochergina06g
  • Вопрос задан 3 месяца назад

Дан текстовый файл. Напечатать все строки с номерами от к1 до к2. На си ​

Ответы

Ответ дал: pupkinll2016
0

Ответ:

Для решения задачи считаем, что каждая строка текстового файла заканчивается символом переноса строки \n. Тогда для печати строк с номерами от k1 до k2 можно прочитать файл построчно и печатать только те строки, номера которых попадают в заданный диапазон. Пример кода на языке C:

Объяснение:

#include <stdio.h>

int main() {

char filename[100];

int k1, k2;

printf("Введите имя файла: ");

scanf("%s", filename);

printf("Введите номера строк k1 и k2: ");

scanf("%d %d", &k1, &k2);

FILE* file = fopen(filename, "r");

if (file == NULL) {

printf("Ошибка открытия файла\n");

return 1;

}

int line_number = 1;

char buffer[1000];

while (fgets(buffer, sizeof(buffer), file) != NULL) {

if (line_number >= k1 && line_number <= k2) {

printf("%s", buffer);

}

line_number++;

}

fclose(file);

return 0;

}

Вас заинтересует