Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
Alias332
0 / 0 / 0
Регистрация: 16.10.2011
Сообщений: 22
1

Сортировка по структуры по полю ФИО

10.06.2012, 12:20. Просмотров 734. Ответов 1
Метки нет (Все метки)

О ГУРУ программирования! Помогите мне решить задачу. Нужно отсортировать структуру по полю FIO. Но неведомые силы не дают это мне сделать. Я прошёл долгий путь, что бы попросить у вас помощи.XD
Вот эти магические символы:
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
54
55
56
57
58
59
60
61
62
63
64
65
// 7.cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
#include <iostream>
#include <math.h>
#include <string.h>
 
using namespace std;
 
 
 
void sort(struct st *mas, int size)
{
}
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(LC_ALL,"rus");
    struct st{
    int nomer;
    char FIO;
    char dolznost;
    char kafedra;
    };
 
    struct st prepod[10];
    int i,o;
    
    printf("Введите число преподователей:");
    scanf("%d",&o);
    printf("\n");
    for(i=0;i<o;i++)
    {
        prepod[i].nomer=i+1;
        printf("Введите ФИО\n");
        scanf("%s",&prepod[i].FIO);
        printf("Введите должность\n");
        scanf("%s",&prepod[i].dolznost);
        printf("Введите кафедру\n");
        scanf("%s",&prepod[i].kafedra);
    }
        for (i=0;i<o;i++)
        {
            printf("%d%s%s%s",prepod[i].nomer,prepod[i].FIO,prepod[i].dolznost,prepod[i].kafedra);
        }
        for(int i=0;i<o;i++) 
            for(int j=0;j<o-1;j++)
                {
                    if(prepod[i].FIO<prepod[j].FIO) 
                        {
                            prepod[9]=prepod[i];
                            prepod[i]=prepod[j];
                            prepod[j]=prepod[9];
                        }
                }
    for (i=0;i<o;i++)
    {
        printf("%d",prepod[i].nomer);
        printf("%s",prepod[i].FIO);
        printf("%s",prepod[i].dolznost);
        printf("%s",prepod[i].kafedra);
    }
 
    return 0;
}
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.06.2012, 12:20
Ответы с готовыми решениями:

Сортировка структуры по полю char
Есть структура struct AeroFlot { char* destination; char* tip; int nomer; int...

Сортировка структуры по полю double
Доброе утро! Написал программу.. вот: #include &quot;stdafx.h&quot; #include &quot;stdio.h&quot; #include...

Быстрая сортировка структуры по одному полю
Задача такова: Составить программу, в которой будет таблица, которая будет выводится после...

Сортировка структуры по полю "фамилия"
Нужно отсортировать структуру. Не знаю как это сделать, помогите пожалуйста! Сортировка по фамилии,...

Сортировка по структуры по полю ФИО
О ГУРУ программирования! Помогите мне решить задачу. Нужно отсортировать структуру по полю FIO. Но...

1
easybudda
Модератор
Эксперт JavaЭксперт CЭксперт С++
10689 / 6390 / 1592
Регистрация: 25.07.2009
Сообщений: 12,132
10.06.2012, 14:51 2
Цитата Сообщение от Alias332 Посмотреть сообщение
char FIO;
То есть фамилия, имя и отчество одной буквой задаются? Структура должна буфер содержать (массив символов) под хранение строки, либо указатель на массив символов, который динамически создаётся... И сравнивать структуры нужно передавая их поля с именем в strcmp() из string.h
То же замечание про хранение строк и ко всем остальным текстовым полям относится.

 Комментарий модератора 
Сортировка по структуры по полю ФИО
Кросспостинг на форуме запрещён! Не делайте так больше! Да и с языком программирования определитесь как-нибудь (в С никакого namespace нет).
0
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.06.2012, 14:51

Сортировка структуры по полю Tag и по полю Eng
Есть структура: struct _1C { string Tag; string Rus; string Eng; _1C(const string &amp;Tag,...

Сортировка структуры по полю
Есть структура типа СТУДЕНТ с полями: *фио *группа *массив из пяти чисел (оценки) Необходимо...

Сортировка структуры по полю
Здравствуйте, пытаюсь реализовать алгоритм k-средних по этому математическому описанию Проблема...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Закрытая тема Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.