ММ
Максим Мочейко

Помогите с задачкой в Си, уже совсем голова не соображает 😞

Дана символьная строка, в которой слова перечислены через точку с запятой, общая длина <=80. Найти и напечатать все слова которые начинаются и оканчиваются на одинаковую букву.

СМ
Санжаржон Муатаров

#include
#include
#include

main() {
char s[81], *p;
printf("string? ");
fgets(s, 81, stdin);
p = strtok(s, ";\n");
printf("\nresult:\n");
while (p != NULL) {
if (p[0] == p[strlen(p) - 1]) printf("%s\n", p);
p = strtok(NULL, ";\n");
}
}

-----------------------------------------------------------------
#include
#include

main() {
char s[81], *p, *b = s, *w;
printf("string? ");
fgets(s, 81, stdin);
printf("\nresult:\n");
for (p = s; *p != '\0'; ++p) {
if (*p == ';' || *p == '\n') {
if (*b == *(p - 1)) {
for (w = b; *w != ';' && *w != '\n'; ++w) putchar(*w);
putchar('\n');
}
b = p + 1;
}
}
}

Лия
Лия

Можно перебрать строку по символам (фором) . Если попалась точка с запятой, сравнить тот символ, что перед ней с тем символом, который мы запомнили после предыдущей точки с запятой (для первого случая с нулевым) . Есливдругчистослучайнотаксложилосьчто эти символы совпали, вывести подстрокумежду этими символами. Реализуй на здоровье.

Похожие вопросы
Задачка по программированию на Си
Помогите пожалуйста с задачкой по Си !! Очень нужно! ! срочно!
Помогите пожалуйста сделать задачку на рекурсию по языке "си".
Задачка на языке СИ помогите
Помогите написать задачку на СИ
Помогите с задачкой по Си пожалуйста
Помогите с задачкой по Си. находится в интервале [а, в] . На языке С
Помогите с задачкой си++
Пожалуйста решите задачку си++
Задачка на подпрограммы на Си