Zadaci ASP

Embed Size (px)

DESCRIPTION

Zadaci iz Asp-a

Citation preview

REKURZIJA#include int fakt(int n){if(nsljed;}}void povecaj_prosjek_studentu(stud *glava, float povecanje, int bri){while(glava){if(glava->bri==bri) glava->prosjek+=povecanje;glava=glava->sljed;}}void dodaj_pocetak(stud **glava, int novibri, float noviprosjek){stud *novi;novi=(stud *)malloc(sizeof(stud));novi->bri=novibri;novi->prosjek=noviprosjek;novi->sljed=glava;*glava=novi;int obrisi_prvi(stud **glava){stud *p=*glava;if(p==NULL) return 0;*glava=p->sljed;free(p);return 1;} struct student{int bri;float prosjek;struct student *sljed;};typedef struct student stud;void ispisrek(stud *glava){if(!glava) return;printf("bri:%d, prosjek:%f \n",glava->bri,glava->prosjek);ispisrek(glava->sljed);}void ispis(stud *glava){while(glava){printf("bri:%d, prosjek:%f",glava->bri,glava->prosjek);glava=glava->sljed;}}int sumabri(stud *glava){int suma=0;while(glava){suma=suma+glava->bri;glava=glava->sljed;}return suma;}int brelem(stud *glava){int brojac=0;while(glava){brojac++;glava=glava->sljed;}return brojac;}int brispodprosjeka(stud *glava, float minprosjek){int brojac=0;while(glava){if(glava->prosjeksljed;}return brojac;}void uvecajzadnji(stud *glava){while(glava->sljed){glava=glava->sljed;}glava->prosjek*=1.5;}void ispisosimzadnjeg(stud *glava){while(glava->sljed){printf("bri:%d, prosjek:%f \n",glava->bri,glava->prosjek);glava=glava->sljed;}}void dodaj(stud *zadnji, int novibri, float noviprosjek){stud *novi;novi=(stud *)malloc(sizeof(stud));novi->bri=novibri; novi->prosjek=noviprosjek;novi->sljed=NULL;zadnji->sljed=novi;}void dodajnapocetak(int novibri, float noviprosjek, stud **glava){stud *novi;novi=(stud *)malloc(sizeof(stud));novi->bri=novibri; novi->prosjek=noviprosjek;novi->sljed=*glava;*glava=novi;}void dodajnakraj(int novibri, float noviprosjek, stud **glava){stud *novi;stud *p;p=*glava;novi=(stud *)malloc(sizeof(stud));novi->bri=novibri;novi->prosjek=noviprosjek;novi->sljed=NULL;if(*glava==NULL){*glava=novi;return;}while(p->sljed!=NULL){p=p->sljed;}p->sljed=novi;}int brisisapocetka(stud **glava){stud *p=*glava;if(p==NULL) return 0;*glava=p->sljed;free(p);return 1;}int brisisakraja(stud **glava){stud *p=*glava;if(p==NULL) return 0;if(p->sljed==NULL){*glava=NULL;free(p);return 1;}while(p->sljed->sljed){p=p->sljed;}free(p->sljed);p->sljed=NULL;return 1;}