Форум программистов, компьютерный форум, киберфорум
Наши страницы

Сортировка массива, состоящего из 8 структур - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Структуры. Динамическое выделение памяти http://www.cyberforum.ru/cpp-beginners/thread99631.html
Добрый день! Хочу задать следующий вопрос: typedef struct name { char *name; char *surename; } NAME; void main () { …..
C++ работа с файлом) Помогите пжлст написать прогу.Задание: Найти среднее количество знаков препинания в абзаце.Текст считывать с файла. Добавлено через 23 часа 46 минут или хотя бы скажите как определить в проге... http://www.cyberforum.ru/cpp-beginners/thread99611.html
error C2248 C++
Привет всем. Из за чего может быть така ошибка error C2248? Пишу в vs 2005, подключил директиву <fstream> (без ".h") после директив использую using namespace std; текст ошибки: c:\program...
Как сделать ввод-вывод с Excel, Word, блокнот и т.д C++
Кто знает напишите плиз?????
C++ Вычислить сумму ряда http://www.cyberforum.ru/cpp-beginners/thread99595.html
Вычислить сумму ряда, заданного общам членом: an=(10 в степени n)/(n)! Если 1<=n<=16
C++ значение функции с использованием цикла Составить программу нахождения хначений функции F(x) на отрезке с шагом h. Результат представить в виде таблицы, первый столбец которой значение аргуманта, второй соответствующие значение функции.... подробнее

Показать сообщение отдельно
AK_U
0 / 0 / 0
Регистрация: 03.02.2010
Сообщений: 22

Сортировка массива, состоящего из 8 структур - C++

27.02.2010, 15:29. Просмотров 439. Ответов 3
Метки (Все метки)

Пусть дана структура:
C++
1
2
3
4
5
6
struct Marsh
{
    char start_punkt[15];       //начальный пункт
    char finish_punkt[15];      //конечный пункт
    int number;                 //номер маршрута
};
Потом вводим данные в массив из восьми структур Marsh. И требуется упорядочить записи по номерам маршрутов( это должна быть отдельная функция). Я пробовал вот так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
void sort_by_number( Marsh *m1, const int max)
{
    
    for( int j=0; j<max-1; j++)
        for( int k=j+1; k<max; k++)
        {
            if( m1[j].number > m1[k].number)
            {
                Marsh temp = m1[j];
                m1[j] = m1[k];
                m1[k] = temp;
            }
            
        }
}
Но ничего не получилось. В чем ошибка или есть более красивый( главное что б рабочий) вариант?
Заранее спасибо!)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru