Вставить “ма” после каждого слога в произвольном слове

222
08 декабря 2017, 04:33

Здравствуйте. Нужна помощь в задании. Мы вводим любое слово (например, литература) и нужно после каждого слога вставить "ма". Нужно использовать функцию strchr.Как я понял, нужно через цикл for находить каждую гласную и вставлять "ма" (возможно, через strncpy). Но у меня не получается реализовать это. Помогите, пожалуйста.

Код такой себе, но всё же:

 #define _CRT_SECURE_NO_WARNINGS
    #include <iostream>
    using namespace std;
    void main()
    {
        setlocale(0, "rus");
        char st[100] = "Лирика";
        char st1[100];
        char al[] = "АаОоЯяЕеИиУу";

        for (int i = 0; i < strlen(st); i++) {

            strncpy(st, st1, );

Не понимаю именно часть с strncpy, ибо он используется для копирования первых х символов. И возникает вопрос, как использовать его для вставки после гласных.

Answer 1

Считаем, что задача разбиения на слоги решена (привет @VladD!).

Установите указатель на начало строки с результатом st1. Установите другой указатель на начало st, находИте длину слога, начиная с этого указателя, копируйте соответствующее количество символов в результат, используя указатели в качестве параметров strncpy. Сдвигайте оба указателя на это количество символов. Копируйте "ма" в результат. Сдвигайте указатель результата еще на два символа. Повторите.

READ ALSO
О типах библиотек debug, release, debug dll, release dll

О типах библиотек debug, release, debug dll, release dll

Хочу основательно разобраться в вопросе о типах библиотек и параметрах /MT (статическая), /MD (dll), /MTd (статическая дебаг) и /MDd (дебаг dll)То, чем...

296
Повреждение кучи

Повреждение кучи

По заданию необходимо считать строки и затем рассортировать четно-нечетной сортировкой слияния БэтчераНельзя использовать stl контейнеры,...

271
Решить пример на С++ [требует правки]

Решить пример на С++ [требует правки]

Не получается описать данный пример на С++, пытался через массивы, но получалась полная каша

263