Найти самое короткое слово в предложение и найти минимум функции - C (СИ)

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

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

1) дано предложение в котором слова разделены запятой или пробелом а общая длинна меньше или равна 80 найти самое короткое слово в предложение 2) Найти минимум функции x^2-sinx методом золотого сечения заранее спасибо!

Решение задачи: «Найти самое короткое слово в предложение и найти минимум функции»

textual
Листинг программы
#include <stdio.h>
#include <string.h>
 
char * shortest_word(char * string, const char * delim) {
    char * currentWord = strtok(string, delim);
    if ( currentWord ) {
        char * nextWord = shortest_word(NULL, delim);
        if ( nextWord )
            return ( strlen(currentWord) > strlen(nextWord) ) ? nextWord : currentWord;
        else
            return currentWord;
    }
    else
        return NULL;
}
 
#define DELIM " \t\n"
 
int main(void) {
    char buf[BUFSIZ];
    
    while ( printf("String: ") && fgets(buf, BUFSIZ, stdin) && *buf != '\n' )
        printf("The first shortest word: %s\n", shortest_word(buf, DELIM));
    
    return 0;
}

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

  1. В функции shortest_word определяется текущее слово в предложении с помощью функции strtok.
  2. Если текущее слово не равно NULL, то функция рекурсивно вызывается для следующего слова, пока не будет найдено самое короткое слово.
  3. В функции main определяется буфер для ввода строки.
  4. Пользователю предлагается ввести строку, и функция fgets используется для считывания строки из стандартного ввода.
  5. Функция shortest_word вызывается для строки, введенной пользователем, и результат выводится на экран.
  6. Цикл продолжается, пока пользователь не введет пустую строку.

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


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

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

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