Вывести строку так, чтобы за каждым словом следовало количество пробелов, равное длине слова - C (СИ) (76425)

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

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

Ввести строку. Вывести строку так, чтобы за каждым словом следовало количество пробелов, равное длине слова.

Решение задачи: «Вывести строку так, чтобы за каждым словом следовало количество пробелов, равное длине слова»

textual
Листинг программы
#include <stdio.h>
#include <ctype.h>
 
#define SIZE 1000
 
int main(void)
{
    char line[SIZE];
    int i, j;
    
    fgets(line, SIZE, stdin);
    
    for (i = 0; line[i] != '\n' && line[i] != '\0'; ) {
    while (isspace(line[i]))
        putc(line[i++], stdout);
    if (!isspace(line[i])) {
        for (j = 0; !isspace(line[i]) && (line[i] != '\n' && line[i] != '\0'); ++j, ++i)
        putc(line[i], stdout);
        while (--j > 0)
        putc(' ', stdout);
    }
    }
    if (line[i] == '\n')
    putc(line[i], stdout);
    
    return 0;
}

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

В этом коде:

  1. Вводится строка с помощью функции fgets().
  2. Происходит проход по каждому символу строки.
  3. Если текущий символ является пробелом, то он выводится на экран.
  4. Если текущий символ не является пробелом, то происходит проход по всем последующим символам до следующего пробела или конца строки. Выводятся все эти символы, а затем выводится пробел.
  5. Если текущий символ является символом новой строки, то он выводится на экран.
  6. В конце программы выводится символ новой строки.
  7. Программа завершается с возвращаемым значением 0, что означает успешное выполнение.

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


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

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

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