le problème c´est que je n´imagine même pas comment est ce que tu peut compiler ça...
char nom[j][20];
int choix[j];
int dejatire[j];
aucune de ces 3 lignes n´est du C.
lorsque tu déclare un tableau, sa dimensions DOIT-être une constante et non pas une variable.
pour faire des tableau de taille variable tu doit déclarer
char **nom;
puis allouer le tableau avec malloc ou alors avec new, mais c´est chient sur des truc à deux dimensions.