Поиск похожих слов в предложении

Перечислите все слова данного предложения, которые состоят из тех же букв, что и первое слово предложения.

Метод решения

Вырезаем из исходной строки слова, определяя их по пробелам. Сравниваем каждое новое вырезанное слово с первым на совпадение букв, с помощью функции EqWord.

Программа

#include <stdio.h> // подключение библиотек
#include <conio.h>
#include <string.h>
#include <iostream.h>
 
int EqWord( char *s1, char *s2){   // функция сравнения двух слов
  int result=1, flag;
  for (int i = 0; i < strlen(s1); i++){
    flag = 0;            // переменная, определяющая встретился ли символ в слове
    for (int j = 0; j < strlen(s2); j++)
       if (s1[i] == s2[j]) {flag=1;}
    if (!flag) {result=0;}    // символ не встретился, буквы в словах не совпадают
  }
  return result;
}
 
 
void main(){
 clrscr();      // очистка экрана
 char FirstWord[50];
 char NextWord[50];
 char *s="You - first word; Find: uoy Yuo Uoy oYu ouY you "; // предложение
 int c;
 с=strсhr(s,' ')-s;    // находим позицию пробела
 FirstWord[c]=''; 
strncpy(FirstWord, s, c);  // вырезаем слово до пробела 
cout << "First Word:" << FirstWord << endl; 
while ( strlen(s) >= 1 ){    // вырезаем из строки слова, пока ее длина > 1
s = s + c + 1;
if (strlen(s) <=1) {break;}  // закончить цикл если длина строки < 1
с=strсhr(s,' ')-s; // позиция пробела
NextWord[c]='';
strncpy(NextWord, s, c); // получаем следующее сдлово из строки
if (EqWord( FirstWord, NextWord)) {cout << NextWord << endl;}; // сравниваем слова }
}

Результат работы программы
First Word:You
Yuo
oYu
ouY

Ключевые слова: 
слова, первое слово, похожие слова, одинаковые буквы