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

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

Войти
Регистрация
Восстановить пароль
 
Sarmat
3 / 3 / 1
Регистрация: 13.11.2010
Сообщений: 57
#1

Найти и вывести на экран слова, которие повторяются - C++

27.10.2011, 19:42. Просмотров 571. Ответов 3
Метки нет (Все метки)

Доброго времени суток, форумчани. Помогите пожалуста решить задачу на Си (просто Си). Просто я начал изучать этот язык недавно.
Нужно в введеной строке найти и вывести на экран слова, которие повторяються.
Зарание всем спасибо.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.10.2011, 19:42     Найти и вывести на экран слова, которие повторяются
Посмотрите здесь:

Найти и вывести на экран все элементы, которые которые повторяются более N/2 раз - C++
#include "stdafx.h" #include <iostream> #include <fstream> using namespace std; int _tmain() { ifstream f ("d:\\base1.txt"); ...

Вывести слова которые повторяются и количество их повторения - C++
Ребят помогите реализовать следующую програмку: нужно чтоб когда на входе программы было например "мама мыла раму раму мыла мама". ...

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

Найти и вывести на экран все слова, являющиеся палиндромами - C++
В произвольном тексте (взятом из файла), содержащем не более 10 строк, в каждой строке не более 80 символов, найти и вывести на экран все...

В строке найти и вывести на экран все слова длиною в три символа - C++
Доброго дня, помогите пожалуйста с C++. Вот условие: 4. В строке найти и вывести на экран все слова длиною в три символа(Описать две...

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

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Olga_
840 / 182 / 16
Регистрация: 01.08.2011
Сообщений: 502
27.10.2011, 20:25     Найти и вывести на экран слова, которие повторяются #2
Предлагаю разбивать строку на слова с помощью более хорошего метода, нежели strtok и очень быстрого:
http://www.cyberforum.ru/showthread.php?p=1880997
Хотя, в вашем случае лучше с помощью strtok разбить строку на лексемы (слова), а в массиве указателей хранить адреса всех слов и сравнивать между собой, хороший вариант. Здесь как раз пригодится то, что strtok заменяет символы-разделители на '\0'
Sarmat
3 / 3 / 1
Регистрация: 13.11.2010
Сообщений: 57
27.10.2011, 20:49  [ТС]     Найти и вывести на экран слова, которие повторяются #3
а чтоб именно с помощью strtok можите написать код. буду очень признатилен))
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.10.2011, 06:48     Найти и вывести на экран слова, которие повторяются
Еще ссылки по теме:

Найти общие для двух заданных строк слова, и вывести их на экран - C++
Задание: "/*С клавиатуры вводятся две строки, содержащие некоторые слова, перечисленные через точку с запятой. Найти общие для этих...

Найти в строке слова-сообщения, в которых содержатся цифры и вывести их на экран - C++
Вводится строка s, слова разделяются пробелами и разделительными знаками. Надо найти слова-сообщения в которых содержатся цыфры и вывести...

Найти в каждой строке текста слова наименьшей длины и вывести на экран - C++
Здравствуйте! Подскажите, пожалуйста, как исправить код, чтобы программа находила в каждой строке текста слова наименьшей длины и...

В предложении найти и вывести на экран все слова, содержащие ровно две буквы “d” - C++
Всем привет! Помогите написать программу! В предложении найти и вывести на экран все слова, содержащие ровно две буквы “d”. Заранее...

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

Вывести на экран слова, содержащие 3 буквы. - C++
Дана вот такая задачка на Си: Дана символьная строка, содержащая текст, заканчивающийся точкой. Вывести на экран слова, содержащие 3...


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

Или воспользуйтесь поиском по форуму:
accept
4821 / 3241 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
28.10.2011, 06:48     Найти и вывести на экран слова, которие повторяются #4
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
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
 
int cmp(const void *s1, const void *s2);
 
int main(void)
{
    char line[] = "a aa b bb dd c cc d dd aa bb cc dd";
    char *words[100], **pw;
    int nwords;
    char *p;
    int i;
    
    pw = words;
    for (p = strtok(line, " ");
         p != NULL;
         p = strtok(NULL, " "))
        *pw++ = p;
    nwords = pw - words;
 
    qsort(words, nwords, sizeof words[0], &cmp);
    
    for (i = 0; i < nwords; i++)
        printf("%s\n", words[i]);
    
    return 0;
}
 
int cmp(const void *s1, const void *s2)
{
    return strcmp(*(const char **) s1, *(const char **) s2);
}
Код
[guest@localhost tests]$ .ansi t.c -o t
[guest@localhost tests]$ ./t
a
aa
aa
b
bb
bb
c
cc
cc
d
dd
dd
dd
[guest@localhost tests]$
разделение и сортировка
дальше нужно найти повторы и вывести какждый первый повтор
Yandex
Объявления
28.10.2011, 06:48     Найти и вывести на экран слова, которие повторяются
Ответ Создать тему
Опции темы

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