Определить, сколько букв содержит самое длинное слово во введенной строке символов - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Определить, сколько букв содержит самое длинное слово во введенной строке символов. Входные данные: На вход программе подается строка, состоящая не более чем из 255 символов. Слова разделяются одним или несколькими пробелами. Выходные данные: Выведите искомое число. Примеры: Входные данные: abed ef Выходные данные: 4

Решение задачи: «Определить, сколько букв содержит самое длинное слово во введенной строке символов»

textual
Листинг программы
#include <stdio.h>
#include <string.h>
 
#define DELIM " \t\n"
 
int main(void) {
    char buf[BUFSIZ];
    
    while ( printf("String: ") && fgets(buf, BUFSIZ, stdin) && *buf != '\n' ) {
        char * wrd = strtok(buf, DELIM);
        int maxlen = strlen(wrd);
        
        while ( ( wrd = strtok(NULL, DELIM) ) != NULL ) {
            int curlen = strlen(wrd);
            if ( curlen > maxlen )
                maxlen = curlen;
        }
        
        printf("Maximum word length: %d\n", maxlen);
    }
    
    return 0;
}

Объяснение кода листинга программы

В этом коде:

  1. Объявлены две переменные: buf типа char и BUFSIZ - размер буфера.
  2. Используются стандартные функции ввода-вывода для вывода приглашения к вводу строки и для чтения этой строки.
  3. Строка, введенная пользователем, сохраняется в переменной buf.
  4. С помощью функции strtok каждое слово в строке преобразуется в отдельный элемент, который затем сохраняется в отдельной переменной wrd.
  5. Длина самого длинного слова сохраняется в переменной maxlen.
  6. В цикле, пока есть слова в строке, проверяется их длина. Если слово длиннее, чем самое длинное до этого, то оно становится самым длинным.
  7. После обработки всех слов в строке выводится на экран длина самого длинного слова.
  8. Цикл повторяется для каждой строки, введенной пользователем.
  9. Программа завершается, когда пользователь вводит пустую строку.
  10. Возвращается 0, что означает успешное завершение программы.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 4 из 5
Похожие ответы