unknown12312 Ответов: 1

Команды[10][20] сохраняют названия команд. Я хочу напечатать имена команд, заканчивающиеся словом, введенным пользователем.


I want to print the team names ending with the word entered by the user.


Что я уже пробовал:

for (i=0;i<10;i++)
if (strncmp(teams[10-i],value,strlen(value))==0)
printf("%s\n",teams[i]);

1 Ответов

Рейтинг:
2

Garth J Lancaster

Я бы обобщил ваш код, с которого вы начали

if (strncmp(takimAdi[10-i],deger,strlen(deger))==0)

чтобы функция ends_with'. При этом вам нужно проверить, что длина проверяемой строки, например "Бурсаспор", больше длины "окончания", поэтому вам также нужно будет рассмотреть возможность использования "strlen".

Может быть, что-то из этого выглядит так
int ends_with(const char * str, const char * ending)
{
  int str_len = strlen(str);
  int ending_len = strlen(ending);

  return 
    (str_len >= ending_len) &&
    // use strcmp here to check the 'end' of the str for 'ending'
}


Так что вам нужно заменить // используйте strcmp здесь, чтобы проверить "конец" str на "окончание" с некоторым кодом, и вы двигались в правильном направлении с тем, что у вас было (если это поможет)