Дано слово. Определить количество различных букв в нем - C (СИ)
Формулировка задачи:
Дано слово. Определить количество различных букв в нем
Решение задачи: «Дано слово. Определить количество различных букв в нем»
textual
Листинг программы
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- int main(void) {
- char* word = "progressmaster";
- int i, j;
- int count = 0;
- int length = strlen(word);
- for (i = 0; i < length; ++i) {
- for (j = 0; j < length; ++j) {
- if (word[i] == word[j]) {
- count++;
- }
- }
- char tmpString[i];
- strncpy(tmpString, word, i);
- tmpString[i] = '\0';
- if (!strchr(tmpString, word[i])) {
- printf("Character: %c, %d\n", word[i], count);
- }
- count = 0;
- }
- return EXIT_SUCCESS;
- }
Объяснение кода листинга программы
В этом коде на языке C происходит подсчет количества уникальных букв в заданном слове.
- В первую очередь, объявляются необходимые переменные:
word
- указатель на строку, содержащую исследуемое слово. В данном случае, этоprogressmaster
.i
иj
- индексы, которые будут использоваться в циклах.count
- переменная для подсчета количества уникальных букв.length
- переменная для хранения длины исследуемого слова.
- Затем, с помощью функции
strlen()
вычисляется длина строкиword
. - Далее, с помощью двух вложенных циклов, происходит сравнение каждой буквы исследуемого слова с каждой другой буквой. Если они совпадают, то к переменной
count
прибавляется единица. - Внутри второго цикла, создается временная строка
tmpString
, которая заполняется символами исследуемого слова до текущей позиции. - С помощью функции
strncpy()
вtmpString
копируются символы исследуемого слова до текущего индекса. При этом, последним символом вtmpString
устанавливается нулевой символ, обозначающий конец строки. - С помощью функции
strchr()
проверяется наличие текущего символа вtmpString
. Если его там нет, то этот символ и его количество выводятся на экран. - После завершения внутреннего цикла, переменная
count
сбрасывается в ноль, чтобы начать подсчет уникальных букв заново для следующей итерации внешнего цикла. - В конце программы возвращается значение
EXIT_SUCCESS
, обозначающее успешный конец работы программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д