Найти и вывести самое короткое слово и его длину из введенного предложения - C (СИ)
Формулировка задачи:
Уважаемые программисты, помогите пож-ста с решение задачи ибо я нуб в этом плане.
Найти и вывести самое короткое слово и его длину из введенного предложения.
Решение задачи: «Найти и вывести самое короткое слово и его длину из введенного предложения»
textual
Листинг программы
y=strtok(d, " ,;"); //Берет твою строку и делет ее по идентификаторам. По пробелам в моем случае. Можешь добавить еще запяты точки и т.п. while(y != NULL) { // В этом цикле получаешь разбитую строку по отдельности словами, перебираются до тех пор. пока не нул if(strlen(y) < z) { // strlen измеряешь количество символов в слове и если кол.символов в слове меньше чем в предыдущем тогда переменной зэт присваиваешь количество символов у мин. из пройденных слов и символьной переменной u присваиваешь это слово. z=strlen(y); u=y; } y=strtok (NULL, " ,;"); }
Объяснение кода листинга программы
- Вводится строка d, которую необходимо разбить на отдельные слова.
- Строка разбивается на слова с помощью функции strtok, которая принимает два аргумента: строку, которую необходимо разбить, и строку, по которой происходит разбивка. В данном случае разбивка происходит по пробелам.
- Результат разбивки сохраняется в переменную y.
- Если y не равно NULL (т.е. было найдено еще одно слово), то проверяется его длина с помощью функции strlen.
- Если длина текущего слова меньше, чем у предыдущего найденного слова, то текущему слову присваивается значение переменной z, а переменной u присваивается само текущее слово.
- После цикла переменной y присваивается значение NULL, чтобы выйти из функции strtok.
- Выводится самое короткое слово (u) и его длина (z).
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д