Дана строка символов. Получить все символы, расположенные между первой и последней точками - C (СИ)

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

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

Дана строка символов. Получить все символы, расположенные между первой и последней точками.

Решение задачи: «Дана строка символов. Получить все символы, расположенные между первой и последней точками»

textual
Листинг программы
#include <stdio.h>
#include <string.h>
 
int main() {
    char s[] = "home.dream.summer.circus";
    int b = 0, e = strlen(s) - 1;
    for (; b <= e && s[b] != '.'; ++b);
    for (; e >= 0 && s[e] != '.'; --e);
    if (b >= e) {
        puts("ERR: something terribly wrong");
        return 1;
    }
    s[e] = '\0';
    puts(&s[b+1]);
    return 0;
}

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

В этом коде постановка задачи следующая: получить все символы, расположенные между первой и последней точками. В первой строке объявляется переменная s типа char с пустой строкой в качестве значения. Далее, в следующих двух строках, определяются начальное и конечное значение переменных b и e. Первая итерация цикла начинается с позиции b и продолжается до тех пор, пока не встретится точка или не будет достигнуто значение e. Вторая итерация цикла начинается с позиции e и продолжается до тех пор, пока не встретится точка или не будет достигнуто значение b. Если значение b больше или равно значению e, то выводится сообщение об ошибке и возвращается 1. Затем, в строке с s[e] = '\0';, символ ноль заменяется на символ конец строки, тем самым обрезая строку до символа перед последней точкой. И в заключительной строке выводится результат.

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


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

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

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