Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
acidburn
0 / 0 / 0
Регистрация: 14.01.2012
Сообщений: 13
#1

Найти слова, содержащие букву “s” - C++

10.07.2012, 14:45. Просмотров 1058. Ответов 7
Метки нет (Все метки)

ребята,помогите пожалуйста с выполнением заданий.совсем недавно пришел с армии(8 дней),на покупку денег нетуможет тут кто откликнется с помощью?!
1.тема: ПРОГРАММИРОВАНИЕ С ИСПОЛЬЗОВАНИЕМ СТРОК.задание:Найти слова, содержащие букву “s”

это выполнять в визуал с++ 6.0 под консолью..и как можно примитивнейшим языком и примитивнейшими командами.как в этом примере
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <string.h>
#include <stdio.h>
int main()
{
char st[100], sl[100];
int k = 0, i;
puts ("Vvedie stroku");
gets (st);
strcat (st," ");
puts ("Slova: ");
int n = strlen(st);
if (n < 2) return 1;
sl[0] = '\0';
for (i=0; i<n; i++)
if (st[i] != ' ')
{
sl[k] = st[i];
sl[k+1] = '\0';
k++;
}
else
{
if (strlen (sl) > 0) puts (sl);
sl[0] = '\0';
k = 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.07.2012, 14:45     Найти слова, содержащие букву “s”
Посмотрите здесь:

Найти слова, содержащие букву “d” - C++
Найти слова, содержащие букву “d”

дана строка текста. найти слова, содержащие букву d - C++
дана строка текста. найти слова, содержащие букву d. За ранее спасибо.

В строке указать слова содержащие заданную букву - C++
Дан массив символов, представляющих собой текст. Указать в нем те слова, которые содержат заданную с клавиатуры букву

Из введенной строки исключить слова, содержащие заданную букву - C++
Доброго времени суток, форумчане. Как и большинство подобных задач про строки на этом форуме, моя задача состоит из 3 задач, две из которых...

Удалить все слова, содержащие указанную пользователем букву - C++
Собственно задание указано в теме. Как я понимаю, мне надо разбить предложение на слова, а потом удалить те, которые содержат эту букву. ...

Удалить все слова, содержащие указанную пользователем букву - C++
Собственно задание указано в теме. Как я понимаю, мне надо разбить предложение на слова, а потом удалить те, которые содержат эту букву. У...

Выделить цветом и подсчитать слова, содержащие среднюю букву – гласную - C++
Разработать программу считывающую из заранее созданного текстового файла фрагмент текста объемом 300 - 400 символов, содержащий буквы...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
salam
162 / 143 / 12
Регистрация: 10.07.2012
Сообщений: 725
11.07.2012, 11:20     Найти слова, содержащие букву “s” #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include <vector>
#include <string>
#include <iostream>
using namespace std;
 
void get_words(string& s, vector<string>& v)
{
    for(int i=0; i < s.length(); i++)
        if(s[i] != ' ')
        {
            int start_index = i;
            while(i != s.size() && s[i] != ' ')
                i++;
            v.push_back(s.substr(start_index, i-start_index));
        }
}
 
int main()
{
    string str;
    vector <string> words;
    getline(cin, str);
    get_words(str, words);
    for(int i=0; i < words.size(); i++)
        if(words[i].find("s") != string::npos)
            cout << words[i] << endl;
    system("pause");
    return 0;
}
ничего большего не позволяет сделать полное отсутствие конкретики в задании...
DiffEreD
1429 / 766 / 95
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
11.07.2012, 11:43     Найти слова, содержащие букву “s” #3
Цитата Сообщение от salam Посмотреть сообщение
v.push_back(s.substr(start_index, i-start_index));
Просили же

Цитата Сообщение от acidburn Посмотреть сообщение
и как можно примитивнейшим языком
salam
162 / 143 / 12
Регистрация: 10.07.2012
Сообщений: 725
11.07.2012, 11:46     Найти слова, содержащие букву “s” #4
думаю, автору вопроса будет крайне полезно узнать, как работают самые распространенные функции двух самых распространенных библиотек языка...
Dekio
Фрилансер
Эксперт С++
5837 / 1218 / 214
Регистрация: 23.11.2010
Сообщений: 3,378
Записей в блоге: 1
11.07.2012, 12:37     Найти слова, содержащие букву “s” #5
Без векторов

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <algorithm>
#include <sstream>
#include <string>
#include <cstring>
 
int main()
{
    std::string Str;
    std::getline(std::cin, Str);
    std::replace_if(Str.begin(), Str.end(), ispunct, ' ');
    std::stringstream stream(Str);
    char symbol = 's';
    while(stream >> Str)
        if(Str.find(symbol) != std::string::npos)
             std::cout<<Str<<std::endl;
    return 0;
}
acidburn
0 / 0 / 0
Регистрация: 14.01.2012
Сообщений: 13
11.07.2012, 13:35  [ТС]     Найти слова, содержащие букву “s” #6
блин,смотрю в методичку,там команд некоторых вообще нет)не знаю куда ее можно скинуть для примера(
MrCold
854 / 752 / 71
Регистрация: 11.01.2012
Сообщений: 1,942
11.07.2012, 15:15     Найти слова, содержащие букву “s” #7
Цитата Сообщение от acidburn Посмотреть сообщение
Найти слова, содержащие букву “s”
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#include <iostream>
#include <cctype>
 
 
int main()
{
 
char str[ 200 ] = "   A crowdsourcing experiment on the design of interplanetary trajectories...";
 
size_t   i  = 0, j  = 0, beg = 0, flag = 0;
 
////////////////////////////////////////////////////
 
for ( ; str[ i ]; i++ ) 
 
    if ( ispunct ( str[ i ] ) ) str[ i ] = ' ';
 
///////////////////////////////////////////////////////
 
    for  ( i = 0 ; str[ i ] != '\0'; i++ )
    {   
                    
            if ( str[ i ] == ' ' &&  str[ i + 1 ] != ' ' )
                {
                     
                    for ( j = beg; str[ j ] != ' '; j++ )
                     {
                          if ( str[ j ] == 's' ) 
 
                              flag = 1;
                     }
 
                    if ( flag )
                    {
 
                         for ( j = beg; str[ j ] != ' '; j++ )
                         {
                              std::cout.put( str[ j ] );
                         }
 
                         std::cout.put( '\n' );
 
                     flag = 0;
 
                    }
 
                     beg = i + 1;  
                 }
            
    }
 
        return ( 0 );
 }
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.07.2012, 19:45     Найти слова, содержащие букву “s”
Еще ссылки по теме:

Заменить в заданной символьной строке все слова, содержащие указанную букву на соответствующее количество символов '*' - C++
Написать функцию, которая заменяет в заданном символьном строке все слова, содержащие указанную букву на соответствующее количество...

Вывести на экран все слова, содержащие букву "k" - C++
дана строка. вывести на экран все слова, содержащие букву k. заранее большое спасибо.

Найти все слова, содержащие подстроку - C++
Дана строка, состоящая из нескольких слов, между соседними словами не менее одного пробела, за последним словом- точка. Найти все слова...

Найти все слова, содержащие подстроку ‘рок’ - C++
Дана строка, состоящая из нескольких слов, между соседними словами не менее одного пробела, за последним словом- точка. Найти все слова...

Найти все слова, содержащие латинские буквы (a, e, i, o, u) - C++
Задан текст. Найти все слова, содержащие латинские буквы (a, e, i, o, u). Напечатать эти слова в порядке увеличения количества букв (a, e,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
rangerx
1932 / 1541 / 141
Регистрация: 31.05.2009
Сообщений: 2,911
11.07.2012, 19:45     Найти слова, содержащие букву “s” #8
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
int main()
{
    const char ch = 's';
    const char* delim = " ,.:;!?";
 
    char* token;
    char buf[256];
 
    printf("> ");
    fgets(buf, sizeof(buf), stdin);
 
    token = strtok(buf, delim);
    while(token != NULL)
    {
        if(strchr(token, ch) != NULL)
            puts(token);
 
        token = strtok(NULL, delim);
    }
 
    return 0;
}
Yandex
Объявления
11.07.2012, 19:45     Найти слова, содержащие букву “s”
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru