Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Visual C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.05.2011, 21:28   #1
G-58
Пользователь
 
Регистрация: 20.12.2010
Сообщений: 11
По умолчанию Поиск слова

Здравствуйте это опять я .
подскажите алгоритм поиска слова в текстовом файле начинающиеся и заканчивающиеся заданной буквой и сохранить результат поиска в отдельный файл . помогите осталось одно задание сделать .
G-58 вне форума Ответить с цитированием
Старый 18.05.2011, 22:39   #2
onewho
Форумчанин
 
Регистрация: 29.09.2010
Сообщений: 636
По умолчанию

Код:
std::string word;
char letters[2]={'a','b'};
while (fIn >> word) {
if (word[0]==letters[0] && word[word.length()-1]==letters[1]) {
fOut << word;
return 0;
}
}
примерно так
onewho вне форума Ответить с цитированием
Старый 18.05.2011, 23:14   #3
G-58
Пользователь
 
Регистрация: 20.12.2010
Сообщений: 11
По умолчанию

Код:
//Если слово начинается и заканчивается нужными символами, то возвратит true. иначе false
bool func(char * word, char first_char,char last_char)
{
        if(word[0]==first_char && word[strlen(word)-1]==last_char)
                return true;
        else
                return false;
}
 
int _tmain(int argc, _TCHAR* argv[])
{
        FILE *file1, *file2;
        char first_char = 'a';
        char last_char = 'b';
        char word[128]={0};
        char str[1024] = {0};
        int i = 0;
        file1 = fopen("first.txt","r");
        file2 = fopen("second.txt","w");
        if(file1 && file2)
        {
                while( fread(str,1,1024,file1) > 0 )
                {
                        for(i;i < strlen(str);++i)
                        {
                                while(!isalpha(str[i]))
                                        ++i;
                                int j = 0;
                                memset(word,0,64);
                                while(isalpha(str[i]))
                                {
                                        word[j]=str[i];
                                        ++j;
                                        ++i;
                                }
                                if(func(word,first_char,last_char))
                                        fprintf(file2,"%s\n",word);
                        }
                        memset(str,0,1024);
                }
        }
        else
                printf("No files");
        return 0;
}
Вот написали мне добрые люди а теперь как мне отобразить результат поиска в listBox
G-58 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск слова в БД kpachbiu PHP 3 01.01.2011 21:35
Поиск слова shanluu Общие вопросы Delphi 1 08.10.2010 22:02
Разбить текст на слова и произвести поиск каждого слова по текстовому массиву Burning_brook Microsoft Office Excel 2 22.05.2010 01:56
Поиск слова Chartvit Общие вопросы C/C++ 0 06.12.2009 16:02
Поиск 'Слова' JakSon Работа с сетью в Delphi 1 20.04.2008 00:13