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

Сортировать слова по количеству букв (по возрастанию) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Деструктор класса. Как правильно очистить память? http://www.cyberforum.ru/cpp-beginners/thread1171677.html
Добрый день! Написал прогу бинарного дерева поиска, все работает, но нужен совет как убрать за собой, тобесь очистить память во избежания утечек. Сам пытался писать delete в деструторе, но толку не дало. Вот коды: //Tree.h #ifndef TREE_H #define TREE_H class Tree { public: Tree();
C++ Алгоритм Флойда-Уоршелла Можно ли переделать алгоритм так, что бы он выдавал не только кратчайший путь, но и указывал через какие вершины графа он проходит? Допустим есть готовая матрица смежности, ввести начальную и конечную вершины и получить желаемый ответ. Спасибо. Вот сам алгоритм (внизу есть реализация)... http://www.cyberforum.ru/cpp-beginners/thread1171675.html
C++ Программа для работы с перемешанной таблицей, использующей перемешивание сложением, по запросам оператора
Вообщем народ такая беда у меня есть задание состоящие из двух частей, с первой проблем с частью А нет все норм. А вот со второй маленький косяк, двоичный файл не создается и даже не открывается. Короче вот задание: Написать программу для работы с перемешанной таблицей, использующей перемешивание сложением, по запросам оператора. Перемешанная таблица организована вектором; каждый элемент...
C++ Ошибка : " L Buffer is too small & & 0"
Здравствуйте. У меня возникла странная проблема: в недалеком прошлом рабочая программа начала выдавать ошибку: " L Buffer is too small & & 0". Не нравиться ей 30 строка, но там ничего важного нет. Помогите,пожалуйста,решить проблему. Скрин ошибки: #include "stdafx.h" #include "iostream" #include "conio.h"
C++ Нахождение экстремумов функции двух переменных, методами: дихотомии, поразрядного сближения и равномерного пои http://www.cyberforum.ru/cpp-beginners/thread1171629.html
Здравствуйте, меня интересует нахождение экстремумов функции двух переменных, методами: дихотомии, поразрядного сближения и равномерного поиска. Для одной переменной, это все очень просто и понятно. А вот для двух, мне совсем ничего не понятно, и в интернете нету даже теории по нахождению экстремумов именно этими методами. Если кто, что либо знает, пожалуйста подскажите что можете. Программу для...
C++ Форматированный вывод действительного числа Доброго времени суток! Подскажите, пожалуйста как лучше обрезать число? Пример: -1.123e020 после обрезки чтоб дало: -1.12e20 (можно ли чтобы там где е020 стало просто е20?. Это важно). Спасибо большое! подробнее

Показать сообщение отдельно
Rovecrew
1 / 1 / 0
Регистрация: 06.03.2014
Сообщений: 25

Сортировать слова по количеству букв (по возрастанию) - C++

10.05.2014, 21:01. Просмотров 1065. Ответов 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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
// Lab13Y.cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
#include <stdio.h>
#include <ctype.h>
#include <string.h>
#include <stdlib.h>
 
//-----------------------------------------------------------------------------
void Swap(char* a, char* b)
{
    char tmp = *a;
    *a = *b;
    *b = tmp;
}
void sort(char* begin, char* end)
{
    while (begin < end)
    {
        Swap(begin++, end--);
    }
}
 
 
void sortallwords(char *text, int count)
{
    char* begin;
 
    register int a, b;
    register char t;
    while (*text)
        
    for (a = 1; a < count; ++a)
        for (b = count - 1; b >= a; --b) {
            if (text[b - 1] > text[b]) {
                /* exchange elements */
                t = text[b - 1];
                text[b - 1] = text[b];
                text[b] = t;
            }
            sort(begin, text - 1);
        }
}
 
int main()
{
    char text[256] = { '\0' };
 
    printf("input text: ");
    fgets(text, sizeof(text)-1, stdin);
 
    sortallwords(text, strlen(text));
 
    printf("result: %s", text);
 
    return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru