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

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

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

Выбор слов - C++

11.03.2010, 14:54. Просмотров 704. Ответов 2
Метки нет (Все метки)

У меня есть строка, которую я ввёл с клавиатуры (объявил char string[100]). Из неё я копирую первое слово (т.е. то, что до ',', ' ', ':', ';') в строку str (char str[100]) и удалил это слово из string. Теперь мне нужно в новую строку (допустим char resstr[100]) из string скопировать те слова, которые состоят из тех же букв, что и str (и не содержат других букв).

Добавлено через 33 секунды
Возможно есть стандартная функция???
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.03.2010, 14:54     Выбор слов
Посмотрите здесь:

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

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

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

Подсчитать и вывести на экран число слов в ней, а затем и каждое отдельное слов - C++
Помогите с кодом: Введите с клавиатуры строку символов, после чего подсчитайте и выведите на экран число слов в ней, а затем и каждое...

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

Запись всех повторяющихся слов в новый массив слов - C++
компилируется без ошибок, запускаю консоль после 13 строчки, а именно ввода количества слов, программа где-то вылетает, думал на 15 что-то...

Дана строка из 20 слов. Сформировать строку, составленную из последних букв всех слов исходной строки - C++
Задача: дана строка из 20 слов (или любого другого числа). Сформировать строку, составленную из последних букв всех слов исходной строки.

Найти слова которые могут быть полностью сложены из других слов,сцепление слов(конкатенация) - C++
найти слова которые могут быть полностью сложены из других слов,сцепление слов(конкатенация)

Дан список слов различной длины. Составить программу упорядочения списка слов: По их длине; По алфавиту - C++
Очень срочно!!!!! Дан список слов различной длины. Составить программу упорядочения списка слов: По их длине; По алфавиту.

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

Использование библиотеки STL , контейнер string. Дан массив слов.Надо удалить все цифры из слов - C++
#include "StdAfx.h" #include <string> #include <iostream> #include <algorithm> using namespace std; int main() { string str...

Строка, введенная пользователем, состоит из слов, разделенных запятой. Подсчитать и вывести на экран количество введенных слов - C++
Задание: Строка, введенная пользователем, состоит из слов, разделенных запятой. Подсчитать и вывести на экран количество введенных слов. ...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
easybudda
Эксперт CЭксперт С++
9461 / 5474 / 927
Регистрация: 25.07.2009
Сообщений: 10,498
11.03.2010, 15:24     Выбор слов #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
30
31
32
33
34
35
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
#define MAX_STR 128
#define SPCHARS " ,.!?;:\t\n"
 
/*
*   Вывести все слова, состоящие из тех же букв, что и первое слово
*/
 
/* возвращает 0, если все буквы слова wrd присутствуют в слове templ */
int testWord(const char *wrd, const char *templ){
    for ( ; *wrd && strchr(templ, *wrd); ++wrd )
        ;
    return *wrd;
}
 
int main(void){
    char str[MAX_STR], *first, *wrd;
 
    printf("String: ");
    if ( !fgets(str, MAX_STR, stdin) || *str == '\n' )
        exit(1);
    if ( ( first = strtok(str, SPCHARS) ) == NULL )
        exit(1);
 
    printf("First word:\n%s\n", first);
    printf("words of same letters:\n");
    while ( wrd = strtok(NULL, SPCHARS) )
        if ( !testWord(wrd, first) )
            printf("%s\n", wrd);
 
    exit(0);
}
stratovarius
13 / 13 / 0
Регистрация: 12.07.2009
Сообщений: 114
11.03.2010, 15:39  [ТС]     Выбор слов #3
Спасибо огромное!!!

И ещё: я ввожу строку и номер предложения. В другую строку мне должно перекинуться предложение под данным номером. Как это реализовать с помощью strtok?
Ответ Создать тему
Опции темы

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