Добавить в начало каждой стоки файла столько пробелов, сколько их в ней встречается - C (СИ)

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

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

Здравствуйте, нужна помощь. Нужно разработать программу, которая ставит в начало каждой стоки текстового файла столько пробелов, сколько в ней встречается их.

Решение задачи: «Добавить в начало каждой стоки файла столько пробелов, сколько их в ней встречается»

textual
Листинг программы
int BlanksCount(char* c)
{
    int n,i;
    n=0;
    for(i=0;c[i]!=0;i++)
       if(c[i]==' ')n++;
    return n;
}
int main()
{
    int n,i;
    FILE *in,*out;
    char buf[200];
    in=fopen("input.txt","rt");
    out=fopen("output.txt","wt");
    while(!feof(in))
    {
          fgets(buf,200,in);
          n=BlanksCount(buf);
          for(i=0;i<n;i++)
                fputc(' ',out);
          fputs(buf,out);
    }
    fclose(out);
}

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

  1. Проходим по каждой строке файла input.txt с помощью функции fgets
  2. Для каждой строки вызываем функцию BlanksCount, которая считает количество пробелов в строке
  3. Сохраняем количество пробелов в переменную n
  4. Записываем в файл output.txt столько пробелов, сколько указано в переменной n с помощью функции fputc
  5. Записываем остаток строки из файла input.txt в файл output.txt с помощью функции fputs

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


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

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

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