Text: |
ФІО = Горбаченко В.А.
Запитання:/*
* задана не порожня послідовність слів з латинських літер.
* Останнім символом цієї послідовності є крапка. Словами називаються
* групи символів , які розділені одним чи кількома пробілами та не містять
* пробілів усередені себе.
* для заданої вище послідовності визначити найкоротше слово!
* Горбаченко Василь 15 04 2011
*/
#include <iostream>
#include <cstring>
using namespace std;
int main()
{
char str[80];
cout << "Input the string:" << endl;
cin.getline(str, 80);
char *pword = strtok(str, " ,-.?!");
//http://www.cplusplus.com/reference/clibrary/cstring/strtok/
//http://www.softtime.ru/dic/id_dic=73&id_group=1
char pmin_word[80] = "<No min word>";
if(pword)
strcpy(pmin_word, pword);
int min_len = (pword ? strlen(pword) : 0), next_len = 0;
while(pword)
{
if((next_len = strlen(pword)) < min_len)
{
strcpy(pmin_word, pword);
min_len = next_len;
}
pword = strtok(NULL, " ,-.?!");
}
cout << "The min word is " << pmin_word << endl;
system("PAUSe");
return 0;
}
====================================
|