#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
void Union(int *a,int *b,int m,int n)
{
int *c,i,j,k=0,flag=0;
c=(int *)malloc(sizeof(int)*m);
for(i=0;i<m;i++)
{
c[k]=a[i];
k++;
}
for(i=0;i<n;i++)
{
flag=0;
for(j=0;j<m;j++)
{
if(b[i]==c[j])
{
flag=1;
break;
}
}
if(flag==0)
{
c[k]=b[i];
k++;
}
}
printf("\nElement of resultant set\n\n");
for(i=0;i<k;i++)
{
printf("\t%d",c[i]);
}
}
int main()
{
int *a,*b,m,n,i,j;
int ch;
//clrscr();
printf("\nEnter the number of elements in first set:\n");
scanf("%d",&m);
a=(int *)malloc(sizeof(int)*m);
printf("\nEnter the elements:\n");
for(i=0;i<m;i++)
{
scanf("%d",&a[i]);
}
printf("\nElement of First set:\n\n");
for(i=0;i<m;i++)
{
printf("%d\t",a[i]);
}
printf("\nEnter the number of elements in second set:\n");
scanf("%d",&n);
b=(int *)malloc(sizeof(int)*n);
printf("\nEnter the elements:\n");
for(i=0;i<n;i++)
{
scanf("%d",&b[i]);
}
printf("\nElement of second set\n");
for(i=0;i<n;i++)
{
printf("%d\t",b[i]);
}
Union(a,b,m,n);
for(i=0;i<m;i++)
free(a++);
for(i=0;i<m;i++)
free(b++);
free(a);
free(B)/>;
return 0;
getchar();
}
↧
Logical error Problem! Pointers 2d array
↧