1

Тема: Допоможіть у написанні програми на Сі будь-ласка

Дано текст, який містить букви і пропуски. Знайти слова, які закінчуються буквосполученням “ати”, і замінити це буквосполучення на “али”. Словом вважати послідовність букв, розділених пропусками.

2

Re: Допоможіть у написанні програми на Сі будь-ласка

Схожими за тематикою були теми:
http://replace.org.ua/topic/604/
http://replace.org.ua/topic/539/

З.І: а якщо серйозно, то достатньо придумати цикл проходу по рядку тексту з використанням strstr() для виявлення блоку "ати ", ну і т.д.

Re: Допоможіть у написанні програми на Сі будь-ласка

Таке підійде ?

#include <string>
#include <iostream>

using namespace std;

string str_replace(const string& search, const string& replace, const string& subject);

int main(int argc, char **argv)
{
    string str="hello world";
    cout << str << endl;
    cout << str_replace(" ", "", str) << endl;
    cout << str_replace(" ", "  ", str) << endl;

    return 0;
}

string str_replace(const string& search, const string& replace, const string& subject)
{
    string str = subject;
    size_t pos = 0;
    while((pos = str.find(search, pos)) != string::npos)
    {
        str.replace(pos, search.length(), replace);
        pos += replace.length();
    }
    return str;
}

Взято звідси: www.zedwood.com/article/105/cpp-strreplace-function

4

Re: Допоможіть у написанні програми на Сі будь-ласка

Hanter написав:

Таке підійде ?

Прихований текст
#include <string>
#include <iostream>

using namespace std;

string str_replace(const string& search, const string& replace, const string& subject);

int main(int argc, char **argv)
{
    string str="hello world";
    cout << str << endl;
    cout << str_replace(" ", "", str) << endl;
    cout << str_replace(" ", "  ", str) << endl;

    return 0;
}

string str_replace(const string& search, const string& replace, const string& subject)
{
    string str = subject;
    size_t pos = 0;
    while((pos = str.find(search, pos)) != string::npos)
    {
        str.replace(pos, search.length(), replace);
        pos += replace.length();
    }
    return str;
}

Взято звідси: www.zedwood.com/article/105/cpp-strreplace-function

Достатньо короткий і гарний варіант. :)

5

Re: Допоможіть у написанні програми на Сі будь-ласка

Я так зрозумів що це С++,а потрібно чисте Сі