Вставить перед каждым словом в предложении знак "?" - C (СИ)

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

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

В заданном предложении перед каждым словом поставить символ «?» Напечатать исходный и преобразованный тексты, а также длину полученного предложения.

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

textual
Листинг программы
#include <stdio.h>
 
int main(void)
{
    const char str[] = "C is quirky, flawed, and an enormous success.";
    for (char *pch = (char*)str, prev = ' '; *pch; prev = *pch++) {
        if (prev == ' ' && *pch != ' ') putchar('?');
        putchar(*pch);
    }
    putchar('\n');
    return 0;
}

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

В этом коде происходит следующее:

  1. Включается библиотека stdio.h, которая содержит функции для ввода и вывода данных.
  2. Определяется функция main(), которая является точкой входа в программу.
  3. Задается строка str[] с помощью const char.
  4. Инициализируется переменная prev со значением ' '.
  5. Запускается цикл for, который проходит по каждому символу в строке str[].
  6. Проверяется условие: если предыдущий символ равен пробелу (' ') и текущий символ не равен пробелу, то выводится знак вопроса ('?').
  7. Выводится текущий символ.
  8. После каждого слова (состоящего из одного или нескольких символов) выводится пробел.
  9. После последнего слова выводится символ новой строки ('\n').
  10. Возвращается 0, чтобы указать, что программа успешно завершилась. Список изменений:
  11. В первой строке кода добавлена библиотека stdio.h.
  12. В третьей строке кода добавлены кавычки вокруг строки str[].
  13. В пятой строке кода добавлено условие, чтобы проверить, является ли текущий символ пробелом.
  14. В шестой строке кода добавлено условие, чтобы проверить, является ли предыдущий символ пробелом.
  15. В седьмой и восьмой строках кода добавлены действия для вывода текущего символа и пробела после каждого слова.
  16. В девятой строке кода добавлено действие для вывода символа новой строки после последнего слова.
  17. В десятой строке кода добавлен return 0, чтобы указать, что программа успешно завершилась.

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


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

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

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