Написать функцию numberstring() для подсчета числа строк в тексте - C (СИ)

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

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

Для удобства работы с длинным текстом на экране необходимо разделить его на строки, не превышающие длины экрана (80 символов). Одна из возможных реализаций такого разбиения это разделить текст на строки ограниченной длины и создать массив указателей на эти строки. Строки при этом разместятся в массивах типа unsigned char следующим образом:
const unsigned len = 80; /*длина строки <=80*/
const unsigned num = 100; /* максимальное число строк 100*/ 
unsigned char*str[100]; int i; /* Создание массивов */ 
for(i=0; i<=num; i++) 
str[i]=(unsigned char*) malloc(len);
Для удобства отладки программ рекомендуется взять в качестве редактируемого текста файл, содержащий программу на языке Си. Если строка больше 80 символов, то для упрощения программы их можно отсечь. Сделать num > числа строк в обрабатываемом файле; при этом последним элементам массива str, не указывающим на строки, присвоить значение NULL. Разместить в памяти, используя массив указателей, преобразованные строки исходного текста программы и вывести их на печать. Написать функцию numberstring( ) для подсчета числа строк в тексте. Напечатать это число. я пока не могу понять как это??(

Решение задачи: «Написать функцию numberstring() для подсчета числа строк в тексте»

textual
Листинг программы
int function(int k,char c)
{
  while(!feof(f))
  {
    fscanf(f,"%c",c);//по символьное считывание файла
    if(c=='\n'){ k++} 
  }
 return k;
}
ну думаю k будет равно кол-во строк в файле

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

В данном коде представлена функция, которая подсчитывает количество строк в тексте, содержащемся в файле.

  1. int function(int k,char c) - объявление функции с двумя позиционными параметрами: целочисленной переменной k и символьной переменной c.
  2. while(!feof(f)) - цикл, который будет выполняться до тех пор, пока не достигнется конец файла.
  3. fscanf(f,%c,c); - считывание одного символа из файла в переменную c.
  4. if(c=='\n'){ k++} - проверка, является ли считанный символ символом новой строки (в этом случае увеличивается значение переменной k, которая в данном контексте считает количество строк).
  5. return k; - возврат значения переменной k из функции. Таким образом, при выполнении данного кода, функция будет считать количество строк в тексте, содержащемся в файле.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

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

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