Описать функцию MinLetter(Stroka), возвращающую букву, которая встречается в строке минимальное число раз - C (СИ)

Узнай цену своей работы

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

Описать функцию MinLetter(Stroka) символьного типа, возвращающую букву, которая встречается в строке минимальное число раз. Если таких букв несколько, то возвращается - последняя. Дан текст. С помощью функции MinLetter вывести слово, образованное из букв, встретившихся в каждом слове минимальное число раз.

Решение задачи: «Описать функцию MinLetter(Stroka), возвращающую букву, которая встречается в строке минимальное число раз»

textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
 
char MinLetter(const char* const s)
{
  char result = 0;
 
  int occurrences[26];
 
  size_t i, length;
 
  length = strlen(s);
 
  if (length > 0)
  {
    memset(occurrences, 0, sizeof(occurrences));
 
    for (i = 0; i < length; i++)
    {
      occurrences[tolower(s[i]) - 97]++;
    }
 
    result = 97;
 
    for (i = 0; i < 26; i++)
    {
      if (occurrences[result - 97] != 0)
      {
        if ((occurrences[result - 97] >= occurrences[i]) && (occurrences[i] > 0))
        {
          result = i + 97;
        }
      }
      else if (occurrences[i] > 0)
      {
        result = i + 97;
      }
    }
  }
 
  return result;
}
 
int main(void)
{
  printf("%c\n", MinLetter("abcdefghijklmnopqrstuvwxyzz"));
 
  return 0;
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 4.231 из 5
Похожие ответы