innanzitutto grazie 1000!

allora.. l'ho provato.. mi dava errore nei punti che ho segnato in grassetto.. al posto del getch() ci ho messo il system["pause"] e ora funziona!

codice:
#include <stdlib.h>
#include <stdio.h>

void insertion_sort(int *, int);

int main()
{
    int i, n, *myArray;

    printf("\nQuanti elementi vuoi inserire nell'array ?: ");
    scanf("%d", &n);
    
    myArray = (int *) malloc (n*sizeof(int));

    for(i = 0; i < n; i++)
    {
        printf("Inserisci il %d elemento dell'array: ", i+1);
        scanf("%d", &myArray[i]);
    }

    for(i = 0; i < n; i++)
        printf("%d ", myArray[i]);
	
    printf("\n\n");

    insertion_sort(myArray, n);

    for(i = 0; i < n; i++)
	printf("%d ", myArray[i]);

system ("pause")	;
//    getch();

//    free(myArray);

    return 0;	
}


void insertion_sort(int *array, int n)
{
    int i, j, temp;

    for(i = 1; i < n; i++)
    {
        temp = (array[i]);
	j = i - 1;

	while((j >= 0) && (temp < array[j]))
        {
	    (array[j+1]) = (array[j]);
	    j--;
	}

	(array[j+1]) = temp;
    }		
}

dato che ho altri programmini da fare, posso tornare a disturbarti, se dovessi averne bisogno?