Код | #include <string.h> #include <stdio.h>
void main() { char str[] = "To be or not to be? The question is..."; // наша строка char * word, // выделенное слово * maxWord, // слово c максимальной длиной * delim = ".,:; ?!-()'[]{}"; // разделители слов int len; // длина очередного слова int maxlen; // максимальная длина
char * strCopy = new char[strlen(str) + 1]; // копия нашей строки strcpy(strCopy, str);
printf("%s\n\n", str); //выводим нашу строку
word = strtok(strCopy, delim); // выделяем первое слово maxWord = word; // запоминаем его начало maxlen = strlen(word); // запоминаем его длину
while(word) // пока есть слова { len = strlen(word); // запоминаем длину очередного слова if(len > maxlen) // и если она больше максимальной, то { maxlen = len; // запоминаем её, как максимальную maxWord = word; // и отмечаем самое длинное слово }
word = strtok(NULL, delim); // выделяем очередное слово }
word = strstr(str, maxWord); // находим самое длинное слово в нашей строке strcpy(word, word + maxlen); // удаляем его
printf("%s\n\n", str); // выводим нашу строку без самого длинного слова
delete[] strCopy; // освобождаем память... Всё...ЗАНАВЕС... } |
|