Originariamente inviato da ramy89
codice:
for(i=0; i<dim; i++){
        scanf("%d ", (p+i));

...
for(i=0; i<dim; i++){
        printf("%d ", *(p+i));
Hai fatto la funzione quadrato.Ogni numero viene elevato al quadrato.
Non usi un array di puntatori, usi un puntatore tramite il quale allochi dinamicamente un array di interi.
Io infatti quello volevo fare. Non ho capito l'errore che mi hai segnalato però..