program to merge two arrays A and B into a single sorted array C that contains every item from arrays A and B, in ascending order

/*  Given the two 1-D arrays A and B, which are sorted in ascending order. Write a program to merge them into a single sorted array C that contains every item from arrays A and B, in ascending order.  */


#include"stdio.h"

void main()
{
int a[20],b[20],c[50],n1,n2,k=0,i,j,temp;
printf("Enter range of first array :");
scanf("%d",&n1);
printf("Enter %d elements: \n", n1);
for(i=0;i<n1;i++,k++)
{
scanf("%d",&a[i]);
c[k]=a[i];
}
for(i=0;i<n1;i++)
{
for(j=i+1;j<n1;j++)
{
if(a[i]>a[j])
{
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
}
printf("\nAscending Order of 1st array....\n");
for(i=0;i<n1;i++)
{
printf("%d\n",a[i]);
}
printf("Enter range of second array:");
scanf("%d",&n2);
printf("Enter %d elements : \n", n2);
for(i=0;i<n2;i++,k++)
{
scanf("%d",&b[i]);
c[k]=b[i];
}
for(i=0;i<n2;i++)
{
for(j=i+1;j<n2;j++)
{
if(b[i]>b[j])
{
temp=b[i];
b[i]=b[j];
b[j]=temp;
}
}
}

printf("\nAscending Order of 2nd array....\n");
for(i=0;i<n2;i++)
{
printf("%d\n",b[i]);
}
for(i=0;i<n1+n2;i++)
{
for(j=i+1;j<n1+n2;j++)
{
if(c[i]>c[j])
{
temp=c[i];
c[i]=c[j];
c[j]=temp;
}
}
}
printf("\nArray after merging\n");
for(i=0;i<n1+n2;i++)
{
printf("%d ",c[i]);
}
printf("\n");
}

Output:









Comments

Popular Posts