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

Вывести все слова входного потока в порядке увеличения их длины - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ экспрес ругается на #include "stdafx.h". Что делать? http://www.cyberforum.ru/cpp-beginners/thread220772.html
запуская программу в ВС Экспресс 2008. выдает вот такую ошибку: Не удается открыть файл include: stdafx.h: No such file or directory что делать,расскажите пожалуйста) Добавлено через 4 минуты только не говорите из за чего ошибка и все этому подобное,просто можете рассказать пошаговую инструкции исправления этой ошибки?)по другому не пойму, так как не опытный пользователь ВС, да и вообще не...
C++ ООП-отчет помогите написать отчет, очень нужно!!!!! /*Определить класс "квадратная матрица", операции матричного умножения, сложения, вычитания, транспонирования, доступ к элементу матрицы по его индексам, вывод в поток. */ #include <iostream.h> #include <fstream.h> #include <iomanip.h> #include <assert.h> http://www.cyberforum.ru/cpp-beginners/thread220768.html
Внутреннее использование strtok C++
Добрый вечер. Нужна Ваша срочная помощь. Мне нужно разбирать 2 строки на слова и каждое слово первой строки сравнить со словами второй, все было бы просто, но вот внутренное использование функции strtok невозможно. token = strtok(text, seps); while(token != NULL) { token0 = strtok(s_text, seps);
пож-ста в C++Builder C++ Builder
Дана строка, содержащая текст на русском языке и некоторые 2 слова. Определить, сколько раз они входят непосредственно друг с другом.
C++ Арифм.Прогрессия http://www.cyberforum.ru/cpp-beginners/thread220748.html
Уже целый день сижу над задачей, но покачто получался только бред... Вот сама задача: Добавить к некоторой последовательности A=(ai), i=1..n, n<=100, наименьшее число элементов, чтобы получить арифметическую прогрессию ( напр 22 1 36 -> 1 8 15 22 29 36) Уже все перебрал, но всеравно в голове решение не укладывается...
C++ Список указателей Имеется структура данных, состоящая из 2 ух полей, необходимо создать отсортированный список указателей на эту структуру. Как создать отсортированный список структур я понимаю, а вот с указателями что-то не очень... подробнее

Показать сообщение отдельно
easybudda
Эксперт С++
9412 / 5435 / 917
Регистрация: 25.07.2009
Сообщений: 10,428
01.02.2011, 00:42     Вывести все слова входного потока в порядке увеличения их длины
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
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
int asc_cmp(const void * a, const void * b) { return strlen(*(char**)a) - strlen(*(char**)b); }
 
#define DELIM " \t\n"
 
int main(void){
    char buf[BUFSIZ], * p, ** words;
    size_t i, count;
    
    while ( printf("\nString: ") && fgets(buf, BUFSIZ, stdin) && *buf != '\n' ){
        words = NULL;
        count = 0;
        for ( p = strtok(buf, DELIM); p; p = strtok(NULL, DELIM) ){
            if ( ( words = (char**)realloc(words, sizeof(char*) * (count + 1)) ) == NULL ){
                perror("realloc");
                exit(1);
            }
            if ( ( words[count++] = strdup(p) ) == NULL ){
                perror("strdup");
                exit(1);
            }
        }
        if ( ! words || ! count ){
            fprintf(stderr, "No words in row!\n");
            continue;
        }
        qsort(words, count, sizeof(char*), asc_cmp);
        for ( i = 0; i < count; ++i )
            printf("%s\n", words[i]);
        
        while ( count )
            free(words[--count]);
        free(words);
    }
    
    exit(0);
}
 
Текущее время: 23:26. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru