int curmenu=0; cursubmenu=1; i=0, n, j, x;
int k=0;
//********* МЕНЮ ********** (c!=27)//поки не натиснута кнопка Esc
{(); (curmenu, cursubmenu);// Показуємо меню=getch ();// Чекаємо дій користувача (cursubmenu == 1)//якщо підміню не розкрито
{(c)
{72: cursubmenu=1;// Вгору; 13: if (curmenu == 5)//enter
{(5,10); 1;
}
//************* диограмма (curmenu == 4)
{diagr () ;;} 80: cursubmenu=0 ;;// Вниз (curmenu == 5)=1 ;; 75: curmenu;// Вліво; 32: 77: curmenu ++;// Вправо;
} (curmenu lt; 0)=5; (curmenu gt; 5)
curmenu=0;
}//якщо підміню показано
{
switch (c)
{72: cursubmenu;// Вгору (cursubmenu lt; 0)=2 ;; 80://пробел32: cursubmenu ++;// Вниз (cursubmenu gt; 2)=0 ;; 75: cursubmenu=1;// Вліво; 13: clrscr (); gotoxy (0,1); SetColorText (15,0);
//********** Друк бази даних на екран (cursubmenu == 0 amp; amp; curmenu == 0) ();
//********** Друк бази даних у файл (cursubmenu == 1 amp; amp; curmenu == 0) ();
//********** Друк бази даних з файлу на екран (cursubmenu == 2 amp; amp; curmenu == 0) ();
//********* Додавання запису в базу (cursubmenu == 0 amp; amp; curmenu == 1) ();
//********** Зміна запису (cursubmenu == 1 amp; amp; curmenu == 1) ();
//********** Видалення запису (cursubmenu == 2 amp; amp; curmenu == 1) ();
//********* Сортування Вакансії по заробітній платі (cursubmenu == 0 amp; amp; curmenu == 2) ();
//************ Сортування Cреднее зарплату за професією (cursubmenu == 1 amp; amp; curmenu == 2) ();
//*********** Погодинну оплату для кожної вакансії
if (cursubmenu == 2 amp; amp; curmenu == 2) ();
//************** Пошук Оплата (cursubmenu == 0 amp; amp; curmenu == 3) ();
//************** Пошук Професія (cursubmenu == 1 amp; amp; curmenu == 3) ();
//************** Пошук Робочий день (cursubmenu == 2 amp; amp; curmenu == 3) () ;;
}
}
} (5,10); 0;
} gotoxy (int xpos, int ypos) {scrn; hOuput=GetStdHandle (STD_OUTPUT_HANDLE) ;. X=xpos; scrn.Y=ypos; (hOuput, scrn);
} SetColorText (int text, int background) {hStdOut=GetStdHandle (STD_OUTPUT_HANDLE); (hStdOut, (WORD) ((background lt; lt; 4) | text));
} clrscr (void) {( cls );
} print () {* fp; str [300]; ((fp=fopen ( baza.dat , r )) == NULL) {perror ( baza.dat ); getch ();} (fgets (str, sizeof (str), fp)) (% s , str); (fp); ();
} printinfile () {* fnew; * fp; str [300]; fname [20]; (14,0); ( Ведіть ім'я файлу: ); (15,0 ); (fname); ((fnew=fopen (fname, w )) == NULL) {perror (fname); } ((fp=fopen ( baza.dat , r )) == NULL) {perror ( baza.dat ); } (fgets (str, sizeof (str), fp)) (fnew, % s , str); (fp); (fnew); (14,0); ( Файл створений ); (15 , 0); ();
} printizfile () {* fop; str [300]; fname [20]; (14,0); ( Ведіть ім'я файлу: ); (15,0); ( fname); (); ((fop=fopen (fname, r )) == NULL) perror (fname); (fgets (str, sizeof (str), fop)) (% s , str ); (fop); ();
} dobavl () {* fp; n=0, i=0; struct _trud {firma [10]; professija [30]; obrazovanie [40]; oplate [50]; rab_den;
}; _ trud * trud=(struct _trud *) malloc (sizeof (struct _trud)); ((fp=fopen ( baza.dat , r )) == NULL ) {perror ( baza.dat ); getch (); }
while (! feof (fp))//feof () перевіряє, чи досягнуто кінець файлу
{= i + 1;=realloc (trud, sizeof (struct _trud) * (n + 1)); (fp, % s% s% s% s% d , amp ; trud [i] .firma, amp; trud [i] .professija, amp; trud [i] .obrazovanie, amp; trud [i] .oplate, amp; trud [i] .rab_den); ++;
} (fp); ((fp=fopen ( baza.dat , a )) == NULL) {perror ( 1.txt ); return 1; } ++;=Realloc (trud, sizeof (struct _trud) * (n + 1));
SetColorText (14,0); ( t tНе використовуйте прогалини і російські шрифти! n n );
printf ( nВведіте фірму: ); (15,0); (% s , amp; trud [n] .firma); (14,0); ( nВведіте професію: ); (15,0); (% s , amp; trud [n] .professija); (14,0); ( nВведіте освіта: ); (15,0); (% s , amp; trud [n] .obrazovanie); (14,0); ( nВведіте оплату: ); (15,0); (% s , amp; trud [n] .oplate); (14,0); ( ...