#include<stdio.h>
#include<conio.h>
#include<alloc.h>
#define newa (struct a*) malloc(sizeof(struct a))
struct a
{
int data;
struct a *next;
};
struct a *create();
void main()
{
struct a *f1,*f2;
int len,reply;
f1 = f2 = NULL;
clrscr();
printf("\nEnter first list\n");
f1 = create();
printf("\nEnter second list\n");
f2 = create();
reply = comparelist(f1,f2);
if( reply == 1 )
printf("Both lists are same");
else
printf("Both lists are not same");
}
struct a *create()
{
struct a *f,*c,*p;
int info;
f = NULL;
printf("\n Enter data ( use 0 to exit ) : ");
scanf("%d",&info);
while( info != 0 )
{
c = newa;
if( c == NULL)
{
printf("\n Insuf. mem. ");
exit(0);
}
c->data = info;
c->next = NULL;
if( f== NULL)
f = c;
else
p->next = c;
p = c;
printf("\n Enter data ( use 0 to exit ) : ");
scanf("%d",&info);
}
return(f);
}
int comparelist(struct a *f1, struct a *f2)
{
int reply;
struct a *t1,*t2;
if( f1 == NULL && f2 == NULL)
return(1);
t1 = f1;
t2 = f2;
while( t1 != NULL && t2 != NULL)
{
if( t1->data != t2->data )
break;
t1 = t1->next;
t2 = t2->next;
}
if( t1 == NULL && t2 == NULL)
return(1);
else
return(0);
}
No comments:
Post a Comment