vineri, 14 septembrie 2018

Generare lista adiacenta

# include <stdio.h>;
# include <conio.h>;
# include <alloc.h>;
# include <stdlib.h>;

typedef struct nodd{int util;struct nodd * next;} NOD;
typedef NOD * NOD_PTR;

unsigned long int n;

NOD_PTR gen(unsigned long int n)
{
NOD_PTR p,q,first;
unsigned long int i;

first=(NOD_PTR)malloc(sizeof(NOD));
first->util=random(100);
first->next=NULL;
p=first;
for(i=0;i<n-1;i++)
 {
  q=(NOD_PTR)malloc(sizeof(NOD));
  q->util=random(100);
  q->next=NULL;
  p->next=q;
  p=q;
 }
return first;
}

void afis(NOD_PTR f)
{
NOD_PTR p;

printf("\nAfisez lista:\n");
p=f;
while(p!=NULL)
{
 printf("%d ",p->util);
 p=p->next;
}
}

void main(void)
{
clrscr();
 printf("Intr nr de elem din lista: ");
  scanf("%uld",&n);
 afis(gen(n));
getche();
}

Niciun comentariu:

Trimiteți un comentariu