Perché fai un ciclio? Ti basta fare una sequenza opportuna di if-then-else che controlli i valori dei pid man mano che i processi vengano creati, ricordando che la fork() restituisce due volte: 0 nel processo figlio, un valore diverso da 0 nel processo padre (che è il pid del figlio), salvo errori.
In ogni caso fai attenzione che stai dichiarando array di un solo elemento ma poi ne utilizzi due, senza contare che il primo if all'interno del primo for ha una condizione di controllo su child_pid che è solo l'indirizzo base dell'array, non il primo elemento.

Rispondi quotando