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

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

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

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

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

textual
Листинг программы
  1. int CountBlanks(char *s)
  2. {
  3.    int n=0,i=0;
  4.    while(s[i])
  5.    {
  6.        if(s[i]==' ')n++;
  7.        i++;
  8.     }
  9.    return n;
  10. }
  11. int main()
  12. {
  13.     int n,i;
  14.     char str[100];
  15.     FILE *fin,*fout;
  16.     fin=fopen("input.txt","rt");
  17.     fout=fopen("output.txt","wt");
  18.     while(!feof(fin))
  19.     {
  20.        fgets(fin,str);
  21.        n=CountBlanks(str);
  22.        for(i=0;i<n;i++)
  23.             fputc(' ',fout);
  24.        fputs(str,fout);
  25.     }
  26.     fclose(fout);
  27. }

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

  1. В функции CountBlanks идет подсчет количества пробелов в строке, переданной в качестве аргумента.
  2. В функции main открывается входной файл input.txt для чтения и выходной файл output.txt для записи.
  3. Затем происходит чтение строки из входного файла с помощью функции fgets и передача ее в функцию CountBlanks для подсчета пробелов.
  4. Количество пробелов, подсчитанное функцией CountBlanks, используется для записи соответствующего числа пробелов в выходной файл с помощью функции fputc.
  5. После записи пробелов, сама строка из входного файла записывается в выходной файл с помощью функции fputs.
  6. Процесс повторяется до тех пор, пока не достигнут конец файла.
  7. В конце функция fclose закрывает файл fout.

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


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

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

6   голосов , оценка 4.167 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы