想表示C第一个输出,D第二个输出,还有其它三个元素自由排列,应该怎么排序,请大家帮忙看看指点

int i= 0;
int m= 0;
while(m<n)
{
if(m==0 && arr[i] == 'C' && arr[(i+1)%n] == 'D')
{
printf("CD");
m=2;
i+=2;
}
else if(m==0)
i++;
else
{
printf("%c",arr[i%n]);
i++;
m++;
}
}