Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Показать сообщение отдельно
easybudda
Модератор
Эксперт CЭксперт С++
10051 / 5971 / 1491
Регистрация: 25.07.2009
Сообщений: 11,305
12.12.2010, 20:48

Упорядочить целые числа в строке по возрастанию.

12.12.2010, 20:48. Просмотров 1472. Ответов 5
Метки (Все метки)

Ответ

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
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <errno.h>
 
int split_n(const char * str, int * arr, int size, const char * delim){
    char * buf, * p, * tail;
    int cnt;
    long val;
    
    if ( ( buf = strdup(str) ) == NULL ){
        perror("strdup");
        return -1;
    }
    for ( cnt = 0, p = strtok(buf, delim); p && cnt < size; ++cnt, p = strtok(NULL, delim) ){
        errno = 0;
        val = strtol(p, &tail, 10);
        if ( errno || *tail ){
            free(buf);
            return -1;
        }
        arr[cnt] = (int)val;
    }
    
    free(buf);
    return cnt;
}
 
int asc_cmp(const void * a, const void * b){
    return *(int*)a - *(int*)b;
}
 
#define MAX_NUMBERS 15
#define DELIM " \t\n"
 
int main(void){
    int arr[MAX_NUMBERS], cnt, i;
    char buf[BUFSIZ];
    
    while ( printf("String: ") && fgets(buf, BUFSIZ, stdin) && *buf != '\n' ){
        if ( ( cnt = split_n(buf, arr, MAX_NUMBERS, DELIM) ) < 1 ){
            fprintf(stderr, "Error while parsing string!\n");
            exit(1);
        }
        qsort(arr, cnt, sizeof(int), asc_cmp);
        printf("Sorted: ");
        for ( i = 0; i < cnt; ++i )
            printf("%d ", arr[i]);
        printf("\n");
    }
    
    exit(0);
}


Вернуться к обсуждению:
Упорядочить целые числа в строке по возрастанию.
2
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.12.2010, 20:48
Готовые ответы и решения:

Задана строка, содержащая целые числа (максимум 15 чисел). Упорядочить целые числа в строке по убыванию.
Задана строка, содержащая целые числа (максимум 15 чисел). Упорядочить целые...

Упорядочить целые числа в строке по убыванию
Задана строка, содержащая вещественные числа (максимум 20 чисел). Упорядочить...

Упорядочить строки целочисленной матрицы по возрастанию одинаковых элементов в строке
Помогите найти ошибку // Упорядочить строки целочисленной прямоугольной...

Выделить из строки числа (только целые) и поместить их в массив по возрастанию
#include &lt;iostream&gt; #include &lt;string.h&gt; using namespace std; void...

Упорядочить строки матрицы по возрастанию количества различных элементов в каждой строке
Дана целочисленная прямоугольная матрица. Упорядочить строки матрицы по...

5
Другие темы раздела
C++ Найти первый член последовательности, переделать с while http://www.cyberforum.ru/cpp-beginners/thread209329.html
Найти первый член последовательности, для которого выполнено условие /an-an-1/<e, если последовательность образована по закону: an=(1-1/2!)(1+1/3!)…(1+(-1)^n/(n+1)!) есть с for: #include...
C++ Курсовой проект планеты Создать Планетарную модель , объектное-ориентирование у меня есть 2 начальные проги (сама писала) 1) это начало кода, так скажем его скелет - классы, т к надо делать через них #include... http://www.cyberforum.ru/cpp-beginners/thread209321.html
Функция: поиск слова в строке C++
нужно написать свою ф-цию, которая проверяет, есть ли какое-то слово в строке! возвращает позицию слова, ести оно есть!
C++ Двоечники
Только начали проходить матрицы....что-то я еще в них не разобралась...помогите пожалуйста решить: Дана матрица A, в которой Ai,j – оценка i-го студента на j-м экзамене по 10-балльной системе....
C++ Описать структуру с именем TRAIN http://www.cyberforum.ru/cpp-beginners/thread209301.html
Описать структуру с именем TRAIN, содержащую следующие поля: ■ название пункта назначения; ■ номер поезда; ■ время отправления. 2. Написать программу, выполняющую следующие действия: ■ ввод с...
C++ Суммирование матриц Напишите программу, которая суммирует матрицы. Размер матриц произвольный. Значения вводятся с клавиатуры подробнее
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru