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

Сортировать слова в строке по буквам - C++

Восстановить пароль Регистрация
 
qwer1234
12 / 12 / 3
Регистрация: 30.10.2012
Сообщений: 463
09.02.2014, 14:41     Сортировать слова в строке по буквам #1
Написать программу в которой вводиться рядок слов, отсортировать слова по первой букве, нужно сделать через использование функций.
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.02.2014, 14:41     Сортировать слова в строке по буквам
Посмотрите здесь:

Написать функцию, меняющую первую букву каждого слова в строке на номер слова. C++
Написать функцию, меняющую первую букву каждого слова в строке на номер слова C++
C++ В заданной строке выбрать те слова,в которых первая буква этого слова встречается еще хоть один раз
Сортировать слова по количеству букв (по возрастанию) C++
Создание слова по буквам C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
xtorne21st
интересующийся
300 / 271 / 19
Регистрация: 25.09.2010
Сообщений: 1,056
09.02.2014, 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
36
37
38
39
40
41
42
#include <iostream>
#include <sstream>
#include <map>
 
typedef std::map<std::string, int> words;
 
void input(words& w)
{
    std::string word;
    while (getline(std::cin, word))
    {
        std::stringstream ss(word);
        while (ss >> word)
        {
            if (word == "stop")
                return;
            ++w[word];
        }
    }
}
 
void print(words& w)
{
    words::const_iterator start = w.begin(), end = w.end();
    while (start != end)
    {
        for (int i = 0; i < (*start).second; ++i)
            std::cout << (*start).first << " ";
        std::cout << std::endl;
        ++start;
    }
}
 
int main()
{
    words w;
 
    input(w);
    print(w);
 
    return 0;
}
Kuzia domovenok
 Аватар для Kuzia domovenok
1883 / 1738 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
09.02.2014, 15:28     Сортировать слова в строке по буквам #3
xtorne21st, ну и где тут сортировка?
xtorne21st
интересующийся
300 / 271 / 19
Регистрация: 25.09.2010
Сообщений: 1,056
09.02.2014, 15:35     Сортировать слова в строке по буквам #4
Kuzia domovenok, везде...
Kuzia domovenok
 Аватар для Kuzia domovenok
1883 / 1738 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
09.02.2014, 17:16     Сортировать слова в строке по буквам #5
xtorne21st, я вообще, подозреваю, когда ты писал этот код, ты не заглядывал в задание ТС. При чём тут подсчёт повторов слов в строке?
qwer1234
12 / 12 / 3
Регистрация: 30.10.2012
Сообщений: 463
09.02.2014, 18:49  [ТС]     Сортировать слова в строке по буквам #6
Kuzia domovenok, прошу, напишите верный код)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.02.2014, 21:33     Сортировать слова в строке по буквам
Еще ссылки по теме:

C++ Выяснить, есть ли в заданной строке слова, которые содержат все буквы слова "read"
C++ Вывести слова в строке ДО слова, у которого одинаковые первая и последняя буквы

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

Или воспользуйтесь поиском по форуму:
Kuzia domovenok
 Аватар для Kuzia domovenok
1883 / 1738 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
09.02.2014, 21:33     Сортировать слова в строке по буквам #7
Сообщение было отмечено автором темы, экспертом или модератором как ответ
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
#define BSIZE 256
#include <conio.h>
#include <string.h>
void strBubbleSort(char** str, unsigned size){
  unsigned i, run=1;
  char* tmp;
  while(run){
    run=0;
    for(i=1; i<size; ++i)
      if (*(str[i])>*(str[i-1]) ){
        tmp=str[i];
        str[i]=str[i-1];
        str[i-1]=tmp;
        run=1;
       }
   }
}
int main(){
  char* words[BSIZE];
  char buffer[BSIZE];
  unsigned i=0, j=0;
  puts("input words:");
  gets(buf);
  words[i]=strtok(buffer, ", .;/t");
  while(words[i++])
    words[i]=strtok(NULL, ", .;\t");
   strBubbleSort(words, i);
  for(j=0; j<i; j++){
    puts(words[j]);
    puts("\n");
  }
  return 0;
}
Yandex
Объявления
09.02.2014, 21:33     Сортировать слова в строке по буквам
Ответ Создать тему
Опции темы

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