Дано слово. Определить сколько различных букв в нём (можно использовать string.h) - C (СИ)
Формулировка задачи:
Дано слово. Определить сколько различных букв в нём (можно использовать string.h), например, если вводим greeterg, результат будет 4
Решение задачи: «Дано слово. Определить сколько различных букв в нём (можно использовать string.h)»
textual
Листинг программы
#include <stdio.h> int main(void) { char str[] = "greeterg"; int symbols[256] = { 0 }; for (char* i = str; *i; ++i) { ++symbols[(unsigned)*i]; } int res = 0; for (int i=0; i < 256; ++i) { if (symbols[i]) ++res; } printf("%d\n", res); return 0; }
Объяснение кода листинга программы
В этом коде:
- Создаётся массив символов
str
типа char с заданным словомgreeterg
. - Создаётся массив
symbols
типа int с 256 элементами, и все они инициализируются нулём. - В цикле перебираются все символы в строке
str
. - Для каждого символа увеличивается соответствующий элемент в массиве
symbols
на единицу. - Создаётся переменная
res
типа int и инициализируется нулём. - В цикле перебираются все элементы массива
symbols
. - Если значение элемента больше нуля, то к переменной
res
прибавляется единица. - Результат выводится на экран с помощью функции printf.
- Программа возвращает 0, что означает успешное завершение работы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д