temp=temp->next;
i=1;
}
if(temp->kod==zn)
{
if(i==0) temp2=temp;
}
return;
}
void rab()
{
cout<<"\nvvedite kod: ";
cin>>(*temp).kod;
cout<<"\nvvedite vid: ";
cin>>(*temp).vid;
cout<<"\nvvedite kolichestvo: ";
cin>>(*temp).kol;
cout<<"\nvvedite cenu: ";
cin>>(*temp).cena;
cout<<"\nvvedite proizvoditelya: ";
cin>>(*temp).proiz;
}
void screen()
{
if(prov()==0) return;
cout<<"kod\tvid\tkolichestvo\tcena\tproizvoditel\n";
temp=perv;
while(temp->next!=NULL)
{
cout<< (*temp).kod<<"\t"
<< (*temp).vid<<"\t" << (*temp).kol<<"\t\t"
<< (*temp).cena<<"\t" << (*temp).proiz<<"\n";
temp=temp->next;
}
cout<< (*temp).kod<<"\t"
<< (*temp).vid<<"\t" << (*temp).kol<<"\t\t"
<< (*temp).cena<<"\t" << (*temp).proiz<<"\n";
return;
}
void add()
{
clrscr();
int a;
tec=(sm*)calloc(1,sizeof(sm));
tec->vid=(char*)calloc(100,sizeof(char));
tec->proiz=(char*)calloc(100,sizeof(char));
temp=tec;
rab();
tec=temp;
if (k==0)
{
perv=tec;
posl=perv;
k++;
}
else
{
temp=tec;
tec=posl;
posl=temp;
tec->next=posl;
k++;
}
posl->next=NULL;
cout<<"\ndobavit' eshe? da-1, net-any cifra\n=>";
cin>>a;
if(a==1) add();
screen();
return;
}
void rename()
{
clrscr();
if(prov()==0) return;
int a;
screen();
cout<<"\nvvedite N redaktiruemoy stroki\n=>";
cin>>zn;
poisk();
rab();
cout<<"\notredaktirovat' eshe? da-1, net-any cifra\n=>";
cin>>a;
if(a==1) rename();
screen();
return;
}
void dell()
{
if(prov()==0) return;
int a, b;
screen();
cout<<"\nvvedite N udalyaemoy stroki\n=>";
cin>>zn;
poisk();
if(temp2->next==temp->next)
{
temp=temp->next;
perv=temp;
}
else
temp2->next=temp->next;
k--;
cout<<"\nudalit' eshe? da-1, net-any cifra\n=>";
cin>>a;
if(a==1) dell();
screen();
return;
}
void obmen()
{
if(prov()==0) return;
sm *temp4,*temp5;
int a,b;
s=0;
temp5=(sm*)calloc(1,sizeof(sm));
temp5->vid=(char*)calloc(100,sizeof(char));
temp5->proiz=(char*)calloc(100,sizeof(char));
temp4=(sm*)calloc(1,sizeof(sm));
temp4->vid=(char*)calloc(100,sizeof(char));
temp4->proiz=(char*)calloc(100,sizeof(char));
temp3=(sm*)calloc(1,sizeof(sm));
temp3->vid=(char*)calloc(100,sizeof(char));
temp3->proiz=(char*)calloc(100,sizeof(char));
screen();
cout<<"\nvvedite N 1-y stroki\n=>";
cin>>zn;
poisk();
temp3=temp;
temp4=temp2;
screen();
cout<<"\nvvedite N 2-y stroki\n=>";
cin>>zn;
poisk();
if((temp3->next==temp))
{
temp3->next=temp->next;
temp->next=temp3;
temp4->next=temp;
s=1;
}
if((s==0) &&(temp->next==temp3))
{
temp->next=temp3->next;
temp3->next=temp;
temp4->next=temp3;
s=2;
}
if(s==0)
{
temp5=temp3->next;
temp3->next=temp->next;
temp->next=temp5;
temp2->next=temp3;
temp4->next=temp;
}
screen();
cout<<"\neshe obmen? da-1, net-any cifra\n=>";
cin>>a;
if(a==1) obmen();
screen();
return;
}
Меню:
Результат проверки заполнения базы:
Ввод данных:
Вывод базы на экран:
Редактирование выбранной записи:
Результат редактирования:
:
Обмен 2-х выбранных строк местами:
Результат обмена:
Удаление выбранной строки:
Результат удаления:
Литература:
Не использовалась
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.