void search() { ITEM *CurrNODE=head->first, *current, *PrevNODE; int y=1, n=0, f=1, l, key, sel=1, i, in=1, r; char str[100]; fflush(stdin); gets(str); while(CurrNODE!=NULL) { if(strcmp(CurrNODE->surname, str)==0) { n++; } CurrNODE=CurrNODE->next; } l=(n<=21?n:21); for(;;) { bg(); l=(n<=21?n:21); for(y=1, in=1, CurrNODE=head->first; CurrNODE!=NULL; CurrNODE=CurrNODE->next) { if(in>=f && in<=l) { if(strcmp(CurrNODE->surname, str)==0) { window(2,(y+2),78,(y+2)); textbackground(sel!=y?BLUE:MAGENTA); textcolor(WHITE); clrscr(); cprintf("%d. ", CurrNODE->id); cprintf("%d ", CurrNODE->recipe); cputs(CurrNODE->surname); cprintf("%d - %d ", CurrNODE->cost, CurrNODE->paid); cputs(CurrNODE->drug_form); //cprintf("%f ", CurrNODE->rec_numb); cprintf(" "); cputs(CurrNODE->day); y++; in++; } } } key=getch(); if(key!=0) { if(key==27)//ESC { break; } else { if(key==13) { current=head->first; for(i=1, r=0, current=head->first;r!=((f+sel)-1);current=current->next, i++) { if(strcmp(current->surname, str)==0) r++; } edit((i-1), sel); } else { continue; } } } else { key=getch(); if(key==72)//up { if(sel>1) { sel--; } else { if(f>1 && sel==1) { f--; l--; } } } else { if(key==80) //down { if(sel<21 && sel!=n) { sel++; } else { if(lfirst; for(i=1, r=0, current=head->first;r!=((f+sel)-1);current=current->next, i++) { if(strcmp(current->surname, str)==0) r++; } delete((i-1)); n--; if(sel>n) sel=n; if(l>n) l=n; } else { continue; } } } } } }