Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- typedef struct nod nod;
- struct nod {int info;
- nod *urm;
- };
- nod *p, *u;
- void cre()
- {nod *c;
- if(!p)
- {p=(nod*)malloc(sizeof(nod));
- scanf("%d",&p->info);
- u=p;
- }
- else
- { c=(nod*)malloc(sizeof(nod));
- scanf("%d",&c->info);
- u->urm=c;
- u=c;
- u->urm=0;
- }
- }
- void afisare()
- {
- nod *c;
- c=p;
- while(c){
- printf("%d ", c->info);
- c=c->urm;}
- }
- int inserare_inceput(int inceput)
- {
- nod *c;
- c=(nod*)malloc(sizeof(nod));
- c->info=inceput;
- c->urm=p;
- p=c;
- }
- int inserare_sfarsit(int k)
- {
- nod *d;
- d=(nod*)malloc(sizeof(nod));
- d=p;
- while(d!=NULL)
- d=d->urm;
- d->info=k;
- d->urm=NULL;
- }
- void inserare_interior(int x,int y)
- {
- nod *d,*c;
- if(p->info==x){
- c=(nod*)malloc(sizeof(nod));
- c->info=y;
- c->urm=p;
- p=c;}
- else{d=p;
- while(d->urm->info!=x) d=d->urm;
- c=(nod*)malloc(sizeof(nod));
- c->info=y;
- c->urm=d->urm;
- d->urm=c;}
- }
- int main()
- {
- int n,i,inceput,k,x,y;
- printf("crearea listei\n");
- printf("n=");
- scanf("%d",&n);
- for(i=1;i<=n;i++)
- cre();
- printf("Lista este: "); afisare(); printf("\n");
- printf("Ce numar sa fie introdus la inceputul listei "); scanf("%d",&inceput); inserare_inceput(inceput); printf("\n");
- printf("Lista noua este: "); afisare(); printf("\n");
- /*printf("Ce numar sa fie introdus la sfarsitul listei "); scanf("%d",&k); inserare_sfarsit(k); printf("\n");
- printf("Lista noua este: "); afisare(); printf("\n");*/
- printf("Introdu elementul "); scanf("%d",&y); printf(" inainte de "); scanf("%d",&x); printf("\n"); inserare_interior(x,y);
- printf("Lista noua este: "); afisare(); printf("\n");
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement