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

Строки - C++

Восстановить пароль Регистрация
 
xeops
0 / 0 / 0
Регистрация: 21.06.2011
Сообщений: 34
21.06.2011, 22:29     Строки #1
Дана символьная строка, содержащая английский текст. Найти количество слов, начинающихся с буквы b.
осеня надо
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.06.2011, 22:29     Строки
Посмотрите здесь:

Дан безразмерный массив.Вставить количество символов каждой строки вначало этой же строки. C++
Добавить в конец первой строки, последние n2-n1 слов второй строки C++
C++ Скопировать второе слово каждой строки в начало следующей строки
Даны две строки. Получить строку, в которой чередуются слова первой и второй строки C++
C++ Определить длину строки,удалить из строки все символы, которые равны заданному
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
VASSUV
MiThEoN
 Аватар для VASSUV
412 / 278 / 15
Регистрация: 31.10.2009
Сообщений: 403
Записей в блоге: 2
21.06.2011, 22:46     Строки #2
xeops,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
int i = 0;
char string[] = "b basdfasg asdfof,,,bbasdtokens"; // исходная строка
char seps[] = " ,"; // строка разделителей
char *token; // ссылка на начало подстроки
token = strtok(string, seps); // выделение первой подстроки
while(token != NULL)
{     
    if(*token == 'b')
        i++;
    puts(token); // печать подстроки
    token = strtok(NULL, seps); // выделение следующей подстроки
}           
printf("%d", i);
Net_Wanderer
235 / 208 / 19
Регистрация: 08.06.2011
Сообщений: 467
21.06.2011, 22:47     Строки #3
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <stdio.h>
#include <string.h>
 
#define DELIMS " .,"
#define LETTER 'b'
 
int main()
{
    char str[] = {"because it's great big white world"},
        *word;
    size_t cnt = 0;
 
    for (word = strtok(str, DELIMS);
        word != NULL;
        word = strtok(NULL, DELIMS))
    {
        if (LETTER == *word)
            ++cnt;
    }
    printf("String contains %d words "
        "beginning with the letter %c\n", cnt, LETTER);
    return 0;
}
Mиxaил
 Аватар для Mиxaил
530 / 435 / 37
Регистрация: 10.12.2009
Сообщений: 1,857
21.06.2011, 22:58     Строки #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <string>
 
int main()
{
    // Напишем чушь :)
    std::string Line ( "qwerty bdsfsf qwebrewr qwewq bq eqwe qweb sdfs b dssadas" );
    
    Line += " ";
    int count = 0;
    while ( Line.find ( " b" ) < Line.length() )
    {
        count++;
        Line.erase( Line.begin(), Line.begin() + Line.find( " b" ) + 1 );
    }
    std::cout << count << std::endl;
    
    std::cin.get();
    return 0;
}
Yandex
Объявления
21.06.2011, 22:58     Строки
Ответ Создать тему
Опции темы

Текущее время: 23:37. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru