0 / 0 / 0
Регистрация: 17.09.2015
Сообщений: 7
1

Сортировка в структуре

17.09.2015, 11:17. Показов 1638. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Надо отсоритровать структуру по параметру "Телефон"
Листал форум, вроде все написано правильно, сортировку делаю "пузырьком", но выводит результат который был введен изначально.
Компилятор Dev-C++
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
#include <stdio.h>
#include <iostream>
#include <clocale>
 using namespace std;
 int main() {
 setlocale (LC_CTYPE, "");
 struct dovidnuk {
 char pr[100]; char vul[100]; char tel[10];};
 struct dovidnuk dov[5],a;
 int i;
 for (i=0;i<2;i++) {
    cout <<  "Студент №" << i+1 << endl;
    printf("Фамилия:"); scanf("%s",dov[i].fam);
    printf("Улица:"); scanf("%s",dov[i].ul);
    printf("Телефон:"); scanf("%s",dov[i].tel);
}
int l;
printf("Для сортировки нажмите 1\n"); scanf("%s",l);
if (l==1)
for(int i=0;i<5;i++)
 for(int j=0;j<4;j++)
 if(dov[i].tel<dov[j].tel) {
        a=dov[i];
        dov[i]=dov[j];
        dov[j]=a;
    }
cout <<  "Sorted:" << endl;
for (i=0;i<5;i++) {
cout <<dov[i].fam<<"\t"<<dov[i].ul<<"\t"<<dov[i].tel<<"\t"<<"\n"<<endl;
}
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.09.2015, 11:17
Ответы с готовыми решениями:

Сортировка в структуре
По заданию нужно ввести данные в структуре, отсортировать по цене (от наименьшей к наибольшей) и...

Сортировка в структуре
Структура: struct Worker { string Name; int Year; ...

Сортировка в структуре
Нужно создать структуру, вбить туда инфу: имя, факультет, группа, пропусков. вывести список у кого...

Сортировка в структуре
Нужно считать в структуру информацию из файла, и отсортировать по зарплате. В файле записана...

5
7803 / 6567 / 2988
Регистрация: 14.04.2014
Сообщений: 28,706
17.09.2015, 11:39 2
Что за чушь в 18-й строке? Должно быть:
C++
1
printf("Для сортировки нажмите 1\n"); scanf("%d", &l);
1
Модератор
Эксперт С++
13644 / 10865 / 6453
Регистрация: 18.12.2011
Сообщений: 28,977
17.09.2015, 11:47 3
Цитата Сообщение от markcod3 Посмотреть сообщение
cout << "Студент №" << i+1 << endl;
printf("Фамилия:");scanf("%s",dov[i].fam);
Неприлично смешивать божий дар с яичницей
C++
1
2
cout << "Студент №" << i+1 << endl<<"Фамилия:";
cin>>dov[i].fam;
Добавлено через 1 минуту
Цитата Сообщение от markcod3 Посмотреть сообщение
if(dov[i].tel<dov[j].tel) {
C++
1
if(strcmp(dov[i].tel,dov[j].tel)==-1){
1
0 / 0 / 0
Регистрация: 17.09.2015
Сообщений: 7
17.09.2015, 22:43  [ТС] 4
nmcf,
Сортировка теперь работает, спасибо, но могли бы обьяснить почему именно так, или где почитать можно про это?

zss,
Все работет, но на выводе вместо русских букв какойто бред, с англ. все нормально, в чем может быть проблема?
0
7803 / 6567 / 2988
Регистрация: 14.04.2014
Сообщений: 28,706
17.09.2015, 23:08 5
Читай описание функции scanf(). Там должны быть указатели и буквы в форматной строке в соответствии с типами вводимых данных.
0
Модератор
Эксперт С++
13644 / 10865 / 6453
Регистрация: 18.12.2011
Сообщений: 28,977
18.09.2015, 08:02 6
setlocale устанавливает для консоли вывода Windows кодировку.
Однако ввод так и остается в DOS кодировке.
C++
1
2
3
4
5
#include <windows.h>
...
cin>>dov[i].fam;
OemToChar(dov[i].fam,dov[i].fam);
....
0
18.09.2015, 08:02
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.09.2015, 08:02
Помогаю со студенческими работами здесь

Сортировка данных в Структуре С++
Доброго времени суток, дорогие форумчане! Возникла следующая проблема. Нужно отсортировать...

Сортировка по фамилии в структуре
Посмотрите пожалуйста структуру Студент! Нужно сделать сортировку по фамилии.Думаю, что с функцией...

Сортировка данных в структуре
Написал код для структуры, содержащей список фамилий, имен, номеров телефона, дней рождения Нужно...

Сортировка данных в структуре
Здравствуйте, как отсортировать структуру по количеству детей в семье struct Department1 {...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru