Поменять первое слово предложения с самым коротким словом

lovemaybeone

Поменяйте первое слово предложения с самым коротким (с одним из самым коротким), а последнее слово- с самым длинным (с одним из самых длинных). Помогите плс, все что додумался
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <conio.h>
#include <clocale>
#include <stdlib.h>
#include <string.h>
 
void main()
{
    char str[40];
    char *buf = " ,.!?";// задаем символы которые  не будут считатся
    printf( "Введите строку:\n");
    gets_s(str);// считываем строку
 
    int i, count = 0;
    for (i = 0; i<strlen(str); i++)// прогоняем цыкл по длине строчки
    {
        if (str[i] != '\0') // если не конец строки
        {
            if (str[i] != *buf)//если не знаки которые считывать
            {
                count++;//увеличить количество
            }
        }
        else break;//в ином случаи выйти из цыкла
    }
 
    printf("%d", count);
    _getch();
}
2 ответа

lovemaybeone

помогите плс


lovemaybeone

Ну первое, что пришло в голову - разбить предложение на массив/список слов и там уже работать, поменять в нём, что надо, а потом заново собрать предложение.