printf("%d ", i < n/2 ? a[i+n/2] : a[i-n/2]);
Have you ever come across something like this? :
Surely they have some kind of separate name, otherwise I don’t understand what and how at all.
This is a condition described using ternary operators.
The format is Condition ? Command_if_true : Command_if_false
in your case, if i < n/2, then output a[i+n/2], otherwise a[in/2]