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

Пять самых длинных слов - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ this и конструктор http://www.cyberforum.ru/cpp-beginners/thread646064.html
Всем привет! Столкнулся с задачей: У класса есть статический указатель, который инициализируется CableTV* CableTV :: ptr = new CableTV; Есть также два указателя в привате PaketAndChannels * paketandchannel; Clients *client;
C++ Что считывает антивирусный сканнер с файлов? Привет! Скажите пожалуйста, что считывает антивирусный сканер? Как эти шестнадцатеричные числа называются у файлов? И как узнать у файлов в C++ эту сумму? Если не в курсе как ее получить, то просто название скажите) Заранее спасибо. http://www.cyberforum.ru/cpp-beginners/thread645984.html
Описать функцию, которая формирует текстовую строку C++
Дан текст в файле F1 в виде: ИМЯ ОТЧЕСТВО ФАМИЛИЯ_1 ИМЯ ОТЧЕСТВО ФАМИЛИЯ_2 ... Описать функцию, которая формирует текстовую строку в формате: ФАМИЛИЯ И.О. Сохранить преобразованный текст в файле F2.
C++ Определение перечисления (enum) в другом файле
Доброго времени суток! :) Вот мой вопрос: в классе A мне необходимо использовать перечисление B, но объявление и определение класса находятся в разных файлах. Можно ли сначала объявить перечисление, а определить в другом файле и, если можно, как это сделать? // file a.h // Объявление класса сlass A { public: A() { } enum B { };
C++ итератор и проверка на чётность\нечётность http://www.cyberforum.ru/cpp-beginners/thread645957.html
Добрый день. Не получается организовать проверку на нечётное количество. При вводе нечётного количества данных программа выдаёт ошибку. Последнюю часть задания прошу не делать, а помочь только с организацией проверки. Сильно "заумный" код прошу не предлагать т.к. только 120 страница учебника для начинающих. /* pg. 124; ex. 3.17 part 1 Прочитайте в вектор набор целых чисел. Вычислите и...
C++ Полноценный запрос POST Подскажите пожалуйста как реализовать полноценный POST запрос? В таком виде: POST Host: Connection: Content-Length: Origin: X-Requested-With: User-Agent: Content-Type: подробнее

Показать сообщение отдельно
Кот Ангенс
 Аватар для Кот Ангенс
317 / 267 / 37
Регистрация: 24.05.2012
Сообщений: 629
03.09.2012, 12:44     Пять самых длинных слов
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
59
60
61
62
63
64
/*Вывести пять самых длинных слов из строки.*/
#include <stdio.h>
#include <stdlib.h>
 
enum {
    COUNT = 5,
    BUFFER_SIZE = 30
};
 
int main() {
    unsigned cursize = BUFFER_SIZE;
    char* buffer = (char*)malloc(BUFFER_SIZE * sizeof(char));
    struct {
        char* pt;
        unsigned short length;
    } s[COUNT];
    unsigned short i, j, l = 0, n = 0;
    char c;
 
    do {
        c = getchar();
        if (c == ' ' || c == ',' || c == '.' || c == '\n') {
            if (l)
                if (n < COUNT) {
                    s[n].length = l;
                    s[n].pt = (char*)malloc(l * sizeof(char));
                    do {
                        l--;
                        s[n].pt[l] = buffer[l];
                    } while (l);
                    /*l = 0;*/
                    n++;
                } else {
                    j = 0;
                    for (i = 1; i < COUNT; i++)
                        if (s[i].length < s[j].length)
                            j = i;
                    if (l > s[j].length) {
                        s[j].length = l;
                        free(s[j].pt);
                        s[j].pt = (char*)malloc(l * sizeof(char));
                        do {
                            l--;
                            s[j].pt[l] = buffer[l];
                        } while (l);
                        /*l = 0;*/
                    } else
                        l = 0;
                }
        } else {
            if (l == cursize)
                buffer = (char*)realloc(buffer, (cursize += BUFFER_SIZE) * sizeof(char));
            buffer[l++] = c;
        }
    } while (c != '\n');
    free(buffer);
    for (i = 0; i < n; i++) {
        for (j = 0; j < s[i].length; j++)
            putchar(s[i].pt[j]);
        free(s[i].pt);
        putchar(' ');
    }
    putchar('\n');
}
Миниатюры
Пять самых длинных слов  
 
Текущее время: 04:47. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru