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

Сортировка массива строк - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ С++ Отсортировать список спортивных команд http://www.cyberforum.ru/cpp-beginners/thread660493.html
Ребят помогите пожалуйста. Структура списка: название команды - город - ФИО тренера - количество очков. Заполнить список и вывести его на экран, а затем вывести информацию о тех командах, которые набрали не меньше 5 очков. Отсортировать список по полю «ФИО тренера» и по полю «количество очков».
C++ решение заданий на C++ Помогите решить задания по C++ builder 1.сделать выражение на c++: cos^5(y+1/y) 2. Какая ошибка присутствует в этом операторе, дайте описание ошибки и скажите как исправить. P:=Q*T; 3. Как сделать величину на c++ : 7.3^2.5 4. Составить блок схему и С + + программу, которая вводит с клавиатуры значение аргумента, вычисляет и печатает Y, и выполняет запрос и повторения вычислений. http://www.cyberforum.ru/cpp-beginners/thread660486.html
C++ Обработка всевозможных исключений
Снова здравствуйте! Я хотел у вас узнать, как, напиример, в консольном приложении(да и любом другов,просто в консоли нагляднее),сделать обработку всех исключений?Весь код что ли заключать в Try-catch? Если есть что то еще,то очень прошу пример.
C++ как задать границу для типа данных unsigned char*
У меня есть двумерный массив значений типа unsigned char*, диапазон значений которого 0 - 255. Как задать условие, чтобы при увеличении на единицу, элементы, значения которых 255 оставались равны 255 а не превращались в 0.
C++ Решение СЛАУ http://www.cyberforum.ru/cpp-beginners/thread660464.html
Доброго времени суток . Пишу программу , которая должна решать системы линейных уравнений методом Гаусса(методом ведущего элемента в столбце) . Код написан , но почему-то возникают проблемы "на ровном месте" , например , неправильно находит ведущий элемент , хотя алгоритм вроде бы правильный . Буду благодарен за любую помощь . #include<iostream.h> #include<math.h> void swap_rows(double **,...
C++ Указатели и ссылки Допустим, что есть функция, в которую мы кидаем массив по указателю и кол-ву элементов. void printArray(int *arr, int elements) Вызываем функцию, соответственно printArray(&arr, 10) подробнее

Показать сообщение отдельно
AXSystems
0 / 0 / 0
Регистрация: 09.11.2012
Сообщений: 3
12.11.2012, 02:50     Сортировка массива строк
Сам тупанул... Как раз на аналогичной программе завис. Здесь используется константное значение длины слова. То есть в начале программы определяется n, и потом под слово выделяет n символов. Таким образом для слова из одного символа(предлог какой нить) будет выделено памяти что и под слово из n букв... Только у меня слова разной длины... Сам я так и не смог сортировку побороть, уже 3 день мучаюсь. Кто может подсказать? Закоменнтаренная функция qsort выбивает прогу
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
int MySort(char** ArrOfStr, int Count)
{
    // определим минимальную длину слова в списке
    // чтобы не было ошибок сортировки строк встроенной функцией qsort
    // 
    int MinLen  = 9999; // заведомо большое число
    int SeekLen = 0;
    int i = 0;
    for (i = 0; i<Count;i++)
    {
        SeekLen = strlen(ArrOfStr[i]);
        if (SeekLen<MinLen)
        {
            MinLen = SeekLen;
        }
    }
    //qsort(ArrOfStr,Count,sizeof(char)*MinLen, (int (*)(const void *,const  void *)) strcmp);
    return EXIT_SUCCESS;
};
Добавлено через 23 минуты
Взял из МСДН код, работает... почему сразу не залез в примеры qsort - не пойму... Жалко время потраченное на поиски, но теперь хоть правильно работать с памятью научился
C++
1
2
3
4
5
6
7
8
9
10
11
12
/* Сортировка массива строк                                             */
int compare( const void *arg1, const void *arg2 )
{
    /* Compare all of both strings: */
    return _stricmp( * ( char** ) arg1, * ( char** ) arg2 );
}
int MySort(char** ArrOfStr, int Count)
{
    qsort( (void *)ArrOfStr, (size_t)Count, sizeof( char * ), compare );
   // qsort(ArrOfStr,Count,sizeof(char*)*MinLen, (int (*)(const void *,const  void *)) strcmp);
    return EXIT_SUCCESS;
};
 
Текущее время: 22:14. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru