#include <limits>
#include <iostream>
#include <locale>
#include <string>
#include <sstream>
#include <vector>
using namespace std;
int main()
{
locale::global(locale("russian_russia.866"));
wcout<<L"Введите строку символов:"<<endl;
// Строка
wstring str;
getline(wcin,str);
// С этого потока будем читать по словам
wstringstream stream(str);
// Слово
wstring word;
// Минимальный размер
wstring::size_type min_size=numeric_limits<wstring::size_type>::max();
// Вектор в котором будем хранить слова
vector<wstring> words;
// Берем следующее слово
while(stream>>word)
{
// Если новый минимум
if(word.length()<min_size)
{
// Сохраним размер
min_size=word.length();
// Очистим вектор
words.clear();
}
// Если нашли слово с размером min_size
if(word.length()==min_size)
{
// Добавим его
words.push_back(word);
}
}
// Если вектор не пуст
if(words.size())
{
// Если больше чем одно слово
if(words.size()>1)
{
// Рачспечатаем
wcout<<L"Найдено несколько слов с минимальной длиной("<<min_size<<L"):"<<endl;
for(vector<wstring>::const_iterator it=words.begin();it!=words.end();++it)
{
wcout<<*it<<endl;
}
}
else
{
wcout<<L"Минимальное слово ""<<words[0]<<L"" содержит "<<min_size<<L" символов"<<endl;
}
}
else
{
wcout<<L"Слов нет"<<endl;
}
system("PAUSE");
return 0;
}
Введите строку символов:
Наша служба и опасна и трудна
Найдено несколько слов с минимальной длиной(1):
и
и
if (min>en)
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
/***************************************************/
int TheShortestWord(FILE * f)
{
int len=0, max=100;
char ch;
do
{
ch = fgetc(f);
if(isalnum(ch))
{
if(ch != 32)
{
len++;
printf("%c",ch);
}
}
else
{
if ((max > len) && (len > 0))
max=len;
printf("\t\tlen = %i\tmax = %i\n",len,max);
len = 0;
}
}while(ch != EOF);
return(max);
}
/************** главная функция **********************/
int main(void)
{
FILE * f=fopen("test.txt","rt");
if (f==NULL)
{
printf("Can't open the file");
return 0;
}
printf("The Shortest Word is %i charfcters length",TheShortestWord(f));
getchar();
return 0;
}
Если Вы уже зарегистрированы на Портале - войдите в систему, если Вы еще не регистрировались - пройдите простую процедуру регистрации.