printf( "%d%d%d" , n[0] , n[1] , n[2] );
printf( "%d%d%d" , n[0] , n[2] , n[1] );
printf( "%d%d%d" , n[1] , n[0] , n[2] );
printf( "%d%d%d" , n[1] , n[2] , n[0] );
printf( "%d%d%d" , n[2] , n[0] , n[1] );
printf( "%d%d%d" , n[2] , n[1] , n[0] );
Questo è il codice per stampare le permutazioni di 3 elementi, 3!=6; .. invece che 6 printf, potresti usare un for unita ad uno scambio dei valori
for( int a = 0; a < 3 ; a++ )
{
printf( "%d%d%d" , n[0] , n[1] , n[2] );
printf( "%d%d%d" , n[0] , n[2] , n[1] );
/* funzione scambia */
sc = n[0];
n[0] = n[1];
n[1] = n[2];
n[2] = sc;
}
in guesto modo fai girare il contenuto dell'Array, ed adoperi le stesse printf
Però con n elementi, le printf diventano (n-1)! quindi 24, e lo scambio devi farlo con tutti e 5 elementi , quindi devi usare la ricorsione.