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

сортировка чисел в "алфавитном" порядке - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.92
VLAD1M1R
0 / 0 / 0
Регистрация: 04.11.2009
Сообщений: 55
17.12.2009, 22:33     сортировка чисел в "алфавитном" порядке #1
Здравствуйте, хотелось бы узнать от вас, как будет выглядеть программа с таким условием: Дано множество чисел (массив).. Нужно вывести на экран числа в "алфавитном" порядке, т.е. число 2 будет стоять раньше 154, 5 раньше 47 и т.д... Надеюсь на вашу помощь. Заранее спасибо.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
niXman
Эксперт C++
 Аватар для niXman
3133 / 1445 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
18.12.2009, 01:13     сортировка чисел в "алфавитном" порядке #2
что-то не совсем понял
Gravity
 Аватар для Gravity
556 / 550 / 39
Регистрация: 29.01.2009
Сообщений: 1,274
18.12.2009, 01:32     сортировка чисел в "алфавитном" порядке #3
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
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
#define NMAX 8
 
int scmp(const void *p1, const void *p2)
{
    const char *s1, *s2;
 
    s1 = * (char **) p1;
    s2 = * (char **) p2;
    return strcmp(s1, s2);
}
 
int main(void)
{
    int nums[NMAX] = { 2, 154, 5, 47, 23, 0, 100, 1 };
    char *lines[NMAX], s[4096];
    int i;
 
    for(i = 0; i < NMAX; i++) {
        sprintf(s, "%d", nums[i]);
        lines[i] = strdup(s);
    }
    qsort(lines, NMAX, sizeof(char *), scmp);
    for(i = 0; i < NMAX; i++)
        printf("%s%s", lines[i], i < NMAX - 1 ? " " : "\n");
    return 0;
}
Цитата Сообщение от VLAD1M1R Посмотреть сообщение
число 2 будет стоять раньше 154, 5 раньше 47 и т.д...
Нифига, сортировка по алфавиту = сортировка по кодам символов, а это будет 154, 2, 47, 5, ... .
VLAD1M1R
0 / 0 / 0
Регистрация: 04.11.2009
Сообщений: 55
18.12.2009, 02:15  [ТС]     сортировка чисел в "алфавитном" порядке #4
спасибо что объяснил, я видимо просто не так задание понял. Ты говоришь, что числа 154, 2, 47, 5 будут идти именно в таком порядке, т.к. первые цифры чисел идут по возрастанию?

Добавлено через 3 минуты
з.ы. Я кстати имел ввиду не именно такие же числа, которые я написал ранее... это я просто пример привел. А числа мне нужно будет выстроить именно из массива (в .txt например 10 чисел)
VLAD1M1R
0 / 0 / 0
Регистрация: 04.11.2009
Сообщений: 55
22.12.2009, 12:07  [ТС]     сортировка чисел в "алфавитном" порядке #5
спасибо за программу, а не мог бы кто-нибудь пояснить значение разных переменных?... =) Был бы очень благодарен
VLAD1M1R
0 / 0 / 0
Регистрация: 04.11.2009
Сообщений: 55
23.12.2009, 22:33  [ТС]     сортировка чисел в "алфавитном" порядке #6
Программу сдал, разобрался сам)) Еще раз большое спасибо за помощь
Yandex
Объявления
23.12.2009, 22:33     сортировка чисел в "алфавитном" порядке
Ответ Создать тему
Опции темы

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