This is what I tried:
while (a<na || b<nb)
{
if(A[a]<B[b])
{
if(a<na)
{
C[c] = A[a];
c++;a++;
}
}
else if (A[a] == B[b])
{
C[c] = A[a];
c++;a++;b++;
}
else
{
if (b<nb)
{
C[c] = B[b];
c++;b++;
}
}
}
for (i=0;i<c;i++)
{
printf("%d ",C[i]);
}
printf("\n");
Solutions in YouTube have while (a<na && b<nb ) instead of while (a<na || b<nb). What is the error in my logic?.