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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.77
kaist
Сообщений: n/a
#1

Вывести слова, заканчивающиеся буквой "а" - C++

28.11.2011, 19:58. Просмотров 1622. Ответов 5
Метки нет (Все метки)

Дана строка символов. Признак конца строки "\n" (перевод строки). Строка состоит из слов, разделенных пробелами. Вывести слова, заканчивающиеся буквой "а", с порядковыми номерами этих слов в данной строке.
 Комментарий модератора 
Запрещено создавать темы с бессмысленными названиями вроде "Помогите!", "Вопрос" и т.п.
Избегайте использования слишком большого количества смайлов в сообщениях в тематических разделах форума, а также "кричащего" выделения текста. Это никаким образом не ускорит решение вашей проблемы.
Пришли за помощью? Соблюдайте правила форума!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.11.2011, 19:58     Вывести слова, заканчивающиеся буквой "а"
Посмотрите здесь:

C++ Ввести строку. Вывести её, заменив цифры на слова ( 0 - "one", 1 - "two", ...)
C++ Вывести все слова заканчивающиеся на букву "а" (переделать на dev c++)
C++ Дана строка найти все слова которые начинаются с буквой "c"
C++ количество строк начинающих на "А" и заканчивающиеся на "и"
Считывание текста с клавиатуры и нахождение слова, начинающиеся и заканчивающиеся согласной буквой C++
Найти в строке слово, начинающееся буквой "а" и оканчивающееся буквой "я" C++
Найти слово, начинающееся буквой "а" и оканчивающееся буквой "я" C++
C++ Определить, есть ли в заданном тексте слова, заканчивающиеся на букву "К"
C++ Вывести слова, начинающиеся и заканчивающиеся одной и той же буквой
C++ Разделить строку на слова, вывести в столбик, подсчитать количество слов с буквой "а"
C++ Определить, есть ли в тексте слова, начинающиеся и заканчивающиеся с буквы "А", и их количество
Определить, есть ли в тексте слова, начинающиеся и заканчивающиеся с буквы "А" C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Сыроежка
Заблокирован
28.11.2011, 20:02     Вывести слова, заканчивающиеся буквой "а" #2
Цитата Сообщение от kaist Посмотреть сообщение
Дана строка символов. Признак конца строки "\n" (перевод строки). Строка состоит из слов, разделенных пробелами. Вывести слова, заканчивающиеся буквой "а", с порядковыми номерами этих слов в данной строке.
Стандартная библиотечная функция strtok, объявленная в заголовочном файле <string.h> в С или в <cstring> в С++ вам в помощь! Почитайте ее описание! Обычно с описанием приводятся простые примеры ее использования.
Mиxaил
531 / 436 / 37
Регистрация: 10.12.2009
Сообщений: 1,857
28.11.2011, 20:07     Вывести слова, заканчивающиеся буквой "а" #3
Так пойдет?!
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
#include <string>
#include <sstream>
 
int main()
{
    std::string s( "qwertda yuio tre erwda dasdasdqw" ), temp;
    std::istringstream ist ( s );
    int index = 0;
    while ( ist >> temp )
    {
        if ( *temp.rbegin() == 'a' )
            std::cout << index + 1 << " " << temp << std::endl;
        index++;
    }
    return 0;
}
ZaVyLoN
83 / 83 / 6
Регистрация: 26.10.2009
Сообщений: 269
28.11.2011, 20:12     Вывести слова, заканчивающиеся буквой "а" #4
создаешь массив для хранения слова

C++
1
char *mas = new char[N];
затем в цикле каждую итерацию копируешь посимвольно в mas из enterString (введенная строка)
C++
1
mas[i] = enterString[i]
и пишешь такое условие

C++
1
2
3
4
5
if(enterString[i] == 'а' && enterString[i+1] == ' ')
{
    mas[i] = '\0';
    // выводишь mas 
}
Счетчик на mas можешь другой ввести. И в цикле обнулять.

Так же учесть, что enterString[i+1] == ' ' может быть не только пробел, но и знак препинания!
easybudda
Эксперт С++
9439 / 5462 / 925
Регистрация: 25.07.2009
Сообщений: 10,481
28.11.2011, 20:22     Вывести слова, заканчивающиеся буквой "а" #5
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <stdio.h>
#include <string.h>
 
#define DELIM " \t\n"
#define LAST_LETTER 'a'
    
int main(void){
    char buf[BUFSIZ], *p;
    size_t cnt;
    
    while ( printf("\nString: ") && fgets(buf, BUFSIZ, stdin) && *buf != '\n' )
        for ( p = strtok(buf, DELIM), cnt = 0; p && ++cnt; p = strtok(NULL, DELIM) )
            if ( *(p + strlen(p) - 1) == LAST_LETTER )
                printf("%d\t%s\n", cnt, p);
    
    return 0;
}
kaist
Сообщений: n/a
28.11.2011, 21:04     Вывести слова, заканчивающиеся буквой "а" #6
Спасибо большое!
Yandex
Объявления
28.11.2011, 21:04     Вывести слова, заканчивающиеся буквой "а"
Ответ Создать тему
Опции темы

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