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

Сортировка и редактирование - C++

Восстановить пароль Регистрация
 
TheSecret
10 / 25 / 1
Регистрация: 20.09.2013
Сообщений: 461
08.04.2014, 16:48     Сортировка и редактирование #1
Подскажите код, требуется сортировка товара по идентификатору и редактирование всех параметров уже сохраненного товара
вот структура данных
C++
1
2
3
4
5
6
7
8
struct Product {
 int id;
 char name[64];
 char value[32];
 double price;
 int number;
 char last_date[32];
};
вот вторая структура
C++
1
2
3
4
struct Products {
 Product P;
 Products *next;
};
для добавления используется 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
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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
void input_product(Product &D) {
clrscr();
char val[64];
int valid=0;
do {
 
cout<<"Vvedite ID tovara"<<endl;
cin>>val;
for (int i=0;i<strlen(val);i++) {
 if (val[i]<'0' || val[i]>'9') {
 valid=0;
 break;
 }
 valid=1;
}
 
if (valid==1) {
sscanf(val,"%d",&D.id);
} else {
cout<<"\t Neverniy tip (tolko celie chicla)"<<endl;
}
 
} while (valid==0);
 
 
cout<<"Vvedite nazvanie prodykta"<<endl;
cin>>D.name;
cout<<"Vvedite valutu"<<endl;
cin>>D.value;
 
char val2[64];
int valid2=0;
do {
 
cout<<"Vvedite ceny"<<endl;
cin>>val2;
for (int i=0;i<strlen(val2);i++) {
 if (val2[i]=='.') {
 continue;
 }
 else if (val2[i]<'0' || val2[i]>'9') {
 valid2=0;
 break;
 } else {
 valid2=1;
 }
}
 
if (valid2==1) {
sscanf(val2,"%lf",&D.price);
} else {
cout<<"\t Nevenie tip (tolko double chicla)"<<endl;
}
 
} while (valid2==0);
 
 
char val3[64];
int valid3=0;
do {
 
cout<<"Vvedite kolichectva tovara na cklade"<<endl;
cin>>val3;
for (int i=0;i<strlen(val3);i++) {
 if (val3[i]<'0' || val3[i]>'9') {
 valid3=0;
 break;
 }
 valid3=1;
}
 
if (valid3==1) {
sscanf(val3,"%d",&D.number);
} else {
cout<<"\t Neverniy tip (tolko celie chicla)"<<endl;
}
 
} while (valid3==0);
 
 
cout<<"Vvedite daty poclednego zavoza"<<endl;
cin>>D.last_date;
cout<<endl<<"Dla perehoda v menu najmite ENTER"<<endl;
getchar();
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
void add_element_struct (Products**Ps,Product &D) {
clrscr();
Products*Inc=new Products;
 
Inc->P.id=D.id;
strcpy(Inc->P.name, D.name);
strcpy(Inc->P.value, D.value);
Inc->P.price=D.price;
Inc->P.number=D.number;
strcpy(Inc->P.last_date, D.last_date);
 
Inc->next=*Ps;
*Ps=Inc;
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
oid save_struct (Products*Ps,int act) {
clrscr();
fstream file;
 
if(!act) {
remove("database.txt");
}
 
file.open("database.txt",ios::out|ios::app);
if (!file) {
cout<<"Baza danix ne doctypna!";
cout<<endl<<"Dla perehoda v menu najmite ENTER"<<endl;
getchar();
return;
}
 
while (Ps) {
file.write((char *) &Ps->P, sizeof(Product));
Ps=Ps->next;
}
file.close();
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.04.2014, 16:48     Сортировка и редактирование
Посмотрите здесь:

C++ Редактирование из таблицы
C++ редактирование edit
C++ Редактирование dll
C++ Сортировка односвязного списка (нужно редактирование)
C++ Редактирование объекта
C++ Редактирование файлов
C++ Сортировка\редактирование\удаление бинарного файла
C++ и редактирование PDF C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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