一维数组 多重循环问题

#include <stdio.h>
int main()
{ int i,k,j,t,n=3;
int x[10]={1,5,7}, y[3]={9,6,5};
for(k=0;k<3;k++)
{ for(i=0;i<n;i++)if(y[k]<=x[i])break;
if(i<n)
{ if(y[k]!=x[i])
{ for(j=n-1;j>=i;j--)
{ t=x[j+1];x[j+1]=x[j];x[j]=t; }
x[i]=y[k];
n++;
}
}
else
{ x[n]=y[k];
n++;
}
}
for(i=0;i<n;i++)printf("%2d",*(x+i));
}
这个程序怎么看啊 好多个括号 能帮忙把整个程序解释一下吗🥺

我运行了一下结果,这个程序应该是两个数组同位置的情况下x数组的值小于y数组的值,并把y数组的值插入到x数组