Найти среднее число букв в словах - C (СИ)
Формулировка задачи:
int srednee(char * str) { }
Решение задачи: «Найти среднее число букв в словах»
//... #include <string.h> //... int tok_count(const char* s, const char* delim) { int c = 0; while(*s) { if(!strchr(delim, *s)) { ++c; do { if(*++s == '\0') { return c; } } while(!strchr(delim, *s)); } else ++s; } return c; }
Объяснение кода листинга программы
В представленном коде реализована функция tok_count
, которая принимает два аргумента: указатель на строку s
и указатель на строку delim
.
Функция считает количество слов в строке s
, где слово отделяется от другого слова символами из строки delim
.
Внутри функции создается счётчик c
, который инициализируется нулём. Затем в цикле, пока символы в строке s
не закончатся, происходит проверка: если текущий символ не является разделителем (т.е. его нет в строке delim
), то счётчик c
увеличивается на единицу.
Когда текущий символ является последним символом в строке s
(т.е. *s == '\0'
), функция возвращает значение счётчика c
.
Если текущий символ является разделителем (т.е. strchr(delim, *s)
возвращает ненулевой результат), то происходит переход к следующему символу в строке s
с помощью ++s
.
Таким образом, в результате выполнения функции tok_count
будет возвращено количество слов в строке s
, где слово отделяется символами из строки delim
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д