Di seguito le strutture come le ho fatte io....spero vadano bene; qualcuno puo dirmi se ci sono errori? Se ce la fate fate infretta ke domani ho esame
// inserisce un elemento nella lista
struct lista * inserisci (struct lista*p){
struct lista *paus,*paus2,*paus3;
if (p-inf==5){
paus=(struct lista*)malloc (sizeof(struct lista*))
paus->pun=p;
p=paus;
p->inf=4;
return 0;
}
while (paus!=NULL){
paus=p;
paus2=paus->pun;
if(paus2->inf==5){
paus3=(struct lista*)malloc (sizeof(struct lista*));
paus3->pun=paus2;
paus->pun=paus3;
return p; }
paus=paus->pun; }
}
//elimina un elemento nella lista
struct lista * elimina (struct lista*p){
struct lista *paus,*paus2;
if (p->inf==5) p=p->pun;
paus=p;
while (paus!=NULL){
paus2=paus->pun;
if(paus2==5){paus->pun=paus2->pun;
paus2->pun=NULL;
free(paus2);
return p;}
paus=paus->pun;}
return p;
}
//elimina un elemento dalla pila
struct pila * elimina (struct pila*p){
struct *p2,*paus;
p2=NULL;
while (p!=NULL)&&(p->inf!=30){
paus=p;
p=p->pun;
paus->pun=NULL;
paus->pun=p2;
p2=paus;
paus=NULL; }
p=p->pun;
while (p2!=NULL){
paus=p2;
p2=p2->pun;
paus->pun=NULL;
paus->pun=p;
p=paus;
paus=NULL; }
return p; }
//inserisci un elemento nella pila
struct pila* inserisci (struct pila*p){
struct *p2,*paus,*paus2;
p2=NULL;
if (p->inf==5){
paus2=(struct pila*)malloc(sizeof(struct pila*));
paus2->pun=p;
p=paus2;
paus2=NULL;
return p; }
else {
while (p!=NULL)&&(p->inf==5){
paus=p;
p=p->pun;
paus->pun=p2;
p2=paus;
paus=NULL; }
paus2=(struct pila*)malloc(sizeof(struct pila*));
paus2->pun=p;
p=paus2;
paus2=NULL;
}
while (p2!=NULL){
paus=p2;
p2=p->pun;
paus->pun=p;
p=paus;
paus=NULL; }
}
//elimina un elemento nella coda
struct coda * elimina (struct coda *p *c){
struct *c2;
c2=c;
while ((p->inf!=5)&&(p!=c2)){
c->pun=p;
p=p->pun;
c=c->pun;
c->pun=NULL;}
p=p->pun;
while (p==c2){
c->pun=p;
p=p->pun; }
c->pun=p;
p=p->pun;
}
//inserisci un elemento nella coda
struct coda * inserisci (struct coda *p*c){
struct *c2*paus;
c2=c;
while (p->inf==5+1){
paus=(struct coda*)malloc(sizeof(struct coda*));
paus->inf=5;
c->pun=paus;
c=c->pun; }
while (p==c2){
c->pun=p;
p=p->pun; }
c->pun=p;
p=p->pun;
}
/inserisci un elemento nella coda
struct coda * inserisci (struct coda *p*c){
struct *c2*paus;
c2=c;
printf("\nInserisci l'elemento da inserire");
scanf("%d",&a);
while (p->inf==a+1){
c->pun=p;
p=p->pun;
c=c->pun;
c->pun=NULL;
}
paus=(struct coda *)malloc(sizeof(struct coda));
paus->inf=a;
c->pun=paus;
c=c->pun;
c->pun=NULL;
while(p!=c2){
c->pun=p;
p=p->pun;
c=c->pun;
c->pun=NULL;
}
c->pun=p;
p=p->pun;
c=c->pun;
c->pun=NULL;