База данных "Студенты"

Курсовой проект - Компьютеры, программирование

Другие курсовые по предмету Компьютеры, программирование

?.О.Бочков, Д.М.Субботин Язык программирования Си для персонального компьютера, Москва СП Диалог 1996г.

.Б.И.Березин, С.Б.Березин Начальный курс С и С++, Москва Диалог-Мифи1996г.

.Е.И.Козел, Л.М.Романовская, Т.В.Русс От Си к С++, Москва Финансы и статистика 1993г.

 

Листинг программы

 

#include

#include

#include student

{name[20];inik[4];curs;fak[5];jobname[20];job[9];usp;student *prior;student *next;

}[100];int M=100;control

{nb;nf;student *bbeg;student *bend;student *fbeg;student *fend;

} ctrl;init(void)

{student *point=st;i;.nb=0;.nf=0;.bbeg=NULL;.bend=NULL;.fbeg=st;.fend=st;=st;("---------------------------");("|inicializacia massiva|");

printf("-----------------------------\n\n\n");(i=0;i<M-1;i++)

{(ctrl.nf!=0)

{-> prior=point-1;-> next=point+1;

}

{-> prior=NULL;-> next=point+1;

}++;.nf++;.fend++;

}.nf++;->prior=point-1;-> next=NULL;0;

}fr(struct student *ptr)

{(ctrl.nb==M)

{>prior=NULL;>next=NULL;.fbeg->prior=ptr;.fbeg=ptr;

}

prior=NULL;>next=ctrl.fbeg;.fbeg->prior=ptr;.fbeg=ptr;">{>prior=NULL;>next=ctrl.fbeg;.fbeg->prior=ptr;.fbeg=ptr;

}.nb--;.nf++;0;

}student *find(char *nam)

{i;student *ptf;

ptf=ctrl.bbeg;(i=0;i<ctrl.nb;i++)

{((strcmp(nam,ptf->name))==0)ptf;=ptf->next;

}NULL;

}delet (void)

{nam[20];i;student *ptr;("--------------------------");("|Funkcia udalenia elementa|");("---------------------------\n");(ctrl.nb==0)

{("Spicok zaniatih elementov pust\n");-1;

}("Vvedite Familiu:\n");("%s",nam);((ptr=find(nam))==0)

{("Familia ne neidena\n");

return -1;

}(ptr==ctrl.bbeg)

{(ctrl.nb==1)

{.bend=NULL;(ptr);0;

}

{.bbeg=ptr->next;.bbeg->prior=NULL;(ptr);0;

}

}

{(ptr==ctrl.bend)

{>prior->next=NULL;.bend=ptr->prior;(ptr);0;

}

{>prior->next=ptr->next;>next->prior=ptr->prior;(ptr);0;

}

}

}input(void)

{student *ptr;("-------------------------");("|funkcia vstavki elemntov |");("----------------------------\n\n");(ctrl.nf==0)

{("Svobodnih elementov net\n");-1;

name);("Vvediteiniciali:");("%s",ptr->inik);("Vveditecurs:");("%d",&ptr->curs);("Vveditefakultet:");("%s",ptr->fak);("Vveditenaimenovaniespecialnosti:");("%s",ptr->jobname);("Vveditecodgruppi:");("%s",ptr->job);("Vvediteuspevaemost:");("%d",&ptr->usp);(ctrl.nf==1)">} {= ctrl.fbeg;("Vvedite familiu:");(" %s",ptr->name);("Vvedite iniciali:");(" %s",ptr->inik);("Vvedite curs:");(" %d",&ptr->curs);("Vvedite fakultet:");(" %s",ptr->fak);("Vvedite naimenovanie specialnosti:");(" %s",ptr->jobname);("Vvedite cod gruppi:");(" %s",ptr->job);("Vvedite uspevaemost:");(" %d",&ptr->usp);(ctrl.nf==1)

next=NULL;>prior=ctrl.bend;.bend->next=ptr;.bend=ptr;.fend=NULL;">{.fbeg=NULL;>next=NULL;>prior=ctrl.bend;.bend->next=ptr;.bend=ptr;.fend=NULL;

}

next;>next=NULL;>prior=ctrl.bend;.bend->next=ptr;.bend=ptr;.fbeg->prior=NULL;">{(ctrl.nb==0).bbeg=ptr;.fbeg=ptr->next;>next=NULL;>prior=ctrl.bend;.bend->next=ptr;.bend=ptr;.fbeg->prior=NULL;

}.nb++;.nf--;0;

} }print(void)

{i;student *ptr;=ctrl.bbeg;(" DATEBASE \"STUDENT\"\n\n");(ctrl.nb==0)

{(" __________________\n");("|Baza dannih pusta|\n");(" ------------------\n\n\n");-1;

}("________________________________________________________________________________");("|NO| Familia | I.O |Kurs|Fakultet| Sprcialnost | Kod |Uspevaemost|");("| | | | | | | | |");("|--|-----------------|-----|----|--------|----------------|--------|-----------|");(i=0;i<ctrl.nb;i++)

{("|| s|",i+1,ptr->name);(" %4s|",ptr->inik);(" |",ptr->curs);(" %5s|",ptr->fak);(" s|",ptr->jobname);(" %7s|",ptr->job);(" |",ptr->usp);("|--|-----------------|-----|----|--------|----------------|--------|-----------|");=ptr->next;

}("\n Obshee chislo zapisei = %d\n",i);0;

}save(void)

{i,k;student *ptr;

char *c;*pti;*fl;

if((fl=fopen("bdd.txt","w"))==NULL)

{("bdd.txt");-1;

}(ctrl.nb==0)

{("Baza dannih pusta\n");("Zapis na disk ne proizvoditsia\n");-1;

}

{("Proizvoditsia zapis BD v fail");=st;=&ctrl.nb;

c=(char*)pti;(i=0;i<sizeof(ctrl); i++)

putc(*c++,fl);=(char*)ptr;(k=0;k<sizeof(st); k++)(*c++,fl);(fl);0;

}}load(void)

{i;student *ptr;*pti;*c,d;*fl;((fl=fopen("bdd.txt","r"))==NULL)

{("bdd.txt");-1;

}(ctrl.nb==0)("Baza dannih pusta\n");(ctrl.nb !=0)

{("Baza dannih v osnovnoi pamiati ne pusta\n");

puts("Proizvodit zagruzku? [y,n]:");

scanf(" %s",&d);(d==N || d==n)

{("Zapros na zagruzku bazi otmenen\n");1;

}

}("Proizvoditsia zagruzka bazi dannih\n");

pti=&ctrl.nb;=(char*)pti;(i=0; i<sizeof(ctrl); i++)

*c++=getc(fl);=st;=(char*)ptr;(i=0;i<sizeof(st);i++)

{((*c=getc(fl))!=EOF)++;

{(fl);0;

}

}0;

}postav (void)

{fam[20];i;student *ptr;("----------------------------");("|Funkcia poiska studenta|");("---------------------------\n");(ctrl.nb==0)

{("Spicok zaniatih elementov pust\n");-1;

}("Vvedite Familiu:\n");("%s",fam);((ptr=find(fam))==0)

{("\nFamilia ne neidena\n");

return -1;

}(ptr==ctrl.bbeg)

{(ctrl.nb==1)

{(" Student naiden\n");("_____________________________________________________________________________\n");("| Familia | I.O |Kurs|Fakultet| Sprcialnost | Kod |Uspevaemost|\n");("| | | | | | | |\n");("|-----------------|-----|----|--------|----------------|--------|-----------|\n");("| s|",ptr->name);(" %4s|",ptr->inik);(" |",ptr->curs);(" %5s|",ptr->fak);(" s|",ptr->jobname);(" %7s|",ptr->job);(" |\n",ptr->usp);("|-----------------|-----|----|--------|----------------|--------|-----------|\n\n");

}

{(" Student naiden\n");("_____________________________________________________________________________\n");("| Familia | I.O |Kurs|Fakultet| Sprcialnost | Kod |Uspevaemost|\n");("| | | | | | | |\n");("|-----------------|-----|----|--------|----------------|--------|-----------|\n");("| s|",ptr->name);(" %4s|",ptr->inik);(" |",ptr->curs);(" %5s|",ptr->fak);(" s|",ptr->jobname);(" %7s|",ptr->job);(" |\n",ptr->usp);("|-----------------|-----|----|--------|----------------|--------|-----------|\n\n");

}

}

{(ptr==ctrl.bend)

{(" Student naiden\n");("_____________________________________________________________________________\n");("| Familia | I.O |Kurs|Fakultet| Sprcialnost | Kod |Uspevaemost|\n");("| | | | | | | |\n");("|-----------------|-----|----|--------|----------------|--------|-----------|\n");("| s|",ptr->name);(" %4s|",ptr->inik);(" |",ptr->curs);(" %5s|",ptr->fak);(" s|",ptr->jobname);(" %7s|",ptr->job);(" |\n",ptr->usp);("|-----------------|-----|----|--------|----------------|--------|-----------|\n\n");

}

{(" Student naiden\n");("_____________________________________________________________________________\n");("| Familia | I.O |Kurs|Fakultet| Sprcialnost | Kod |Uspevaemost|\n");("| | | | | | | |\n");("|-----------------|-----|----|--------|----------------|--------|-----------|\n");("| s|",ptr->name);(" %4s|",ptr->inik);(" |",ptr->curs);(" %5s|",ptr->fak);(" s|",ptr->jobname);(" %7s|",ptr->job);(" |\n",ptr->usp);("|-----------------|-----|----|--------|----------------|--------|-----------|\n\n");0;

}

}

}main(void)

{numb[10];();(1)

{("\t MENU \n");("\t______________________________________\n");("\t|1| Vvod svedenii o novom sotrudnike |\n");(&qu