Определение и вставка пропущеных слов - C (СИ)

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

Доброго времени суток. Столкнулся с одной задачей: В заданном предложении пропущены некоторые слова, заменить пропущенные из списка, тобишь когда мы пишем: "My $ is Sanya" нам должно выдать "My name is Sanya". Хотел сделать проверку, в каком месте находиться пропущенное слово по последним символам до пробела, но при попытке программа вылетает. Помогите, надо сдать до завтра.
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main() {
    char worda[] = "my";
    char wordb[] = "name";
    char wordc[] = "is";
    char wordd[] = "Sanya";
    char un[] = "$";
    printf("%s", wordb[3]);
    return 0;
}

Код к задаче: «Определение и вставка пропущеных слов - C (СИ)»

textual
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main() {
    char s[] = "My $ is Sanya";
    char t[] = "name";
    for (int i = 0; i < strlen(s); i++)
        if (s[i] == '$')
            printf("%s", t);
        else
            printf("%c", s[i]);
    return 0;
}

15   голосов, оценка 3.933 из 5


СОХРАНИТЬ ССЫЛКУ