Найти длину самого короткого слова в строке (С++ -> Си) - C (СИ)
Формулировка задачи:
Задание: Работа со строками. Найти длину самого короткого слова
#include <string> #include <iostream> #include <sstream> using namespace std; int main(void) { string text="qwe asdf zxcvb qw zxcvasdf weqr"; int size=10; istringstream iss(text); while(iss) { string temp; iss >> temp; if(size>temp.size() && temp.size()!=0) size=temp.size(); } cout<<"самое короткое слово: "<<size<<" букв"; }
Решение задачи: «Найти длину самого короткого слова в строке (С++ -> Си)»
textual
Листинг программы
#include <stdio.h> #include <string.h> #define DELIM " ,.-!?" int main(void) { char str[] = "Eniki beniki eli vareniki", *p = strtok(str, DELIM); unsigned int minLen = strlen(p); while ((p = strtok(NULL, DELIM))) if (strlen(p) < minLen) minLen = strlen(p); printf("Smallest word has %u chars\n", minLen); return 0; }
Объяснение кода листинга программы
- Подключение необходимых библиотек: iostream.h и string.h
- Объявление строки, на которой будет происходить поиск самого короткого слова
- Использование функции strtok для разделения строки на слова и получения первого слова
- Инициализация переменной minLen значением длины первого слова
- Использование цикла while для проверки всех оставшихся слов
- Сравнение длины текущего слова с minLen
- Обновление значения minLen, если текущее слово короче
- Вывод результата - длины самого короткого слова
- Завершение программы
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д