Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 4

/* Operatii asupra Listei Liniare Simplu Inlantuite */

#include <stdio.h>

#include <conio.h>

#include <ctype.h>

#include <alloc.h>

#include <string.h>

struct NOD

int cheie;

char info[10];

struct NOD *urm;

};

typedef struct NOD Tnod;

typedef Tnod *ref;

ref prim;

ref q,r,s;

int k;

void ins_cf(void) /* Insereaza un NOD in Fata Listei */

q=malloc(sizeof(Tnod));

printf("Introduceti cheia : "); scanf("%d",&q->cheie);

printf("Introduceti informatia : ");

fflush(stdin); scanf("%s",q->info);
q->urm=prim;

prim=q;

} /*ins_cf*/

void listare(void)

if(prim==NULL)

printf("Lista este vida !!!");

else

printf("\nElementele listei sunt :\n");

r=prim;

while(r!=NULL)

printf("Cheia : %d \t | \t ", r->cheie);

printf("Informatia : %s \n", r->info);

r=r->urm;

} /* Listare */

void creare(void)

char c;

prim=NULL;

do

{
ins_cf();

listare();

printf("Continuati ?! [D/N] : ");

fflush(stdin); scanf("%c", &c); c=toupper(c);

}while(c=='D');

} /* Creare */

void main(void)

char op;

char c;

prim=NULL;

clrscr();

do

clrscr();

printf("\t\tOperatii asupra Listei Liniare Simplu Inlantuite\n\n");

printf("\tC-Crearea \n ");

printf("\tA-Adaugarea la inceputul listei \n ");

printf("\tL-Listare \n ");

printf("\tE-Exit \n\n ");

printf("Introduceti optiunea : "); scanf("%s",&op); op=toupper(op);

printf("\n");

switch(op)

case 'C': creare();

break;
case 'A': ins_cf();

listare();

getch();

break;

case 'L': listare();

getch();

break;

case 'E': break;

default: printf("Optiunea e gresita !!! \n ");

getch();

break;

}while(op!='E');

} /* MAIN */

You might also like