Per evitare i warning sul tipo usa il codice che ti metto sotto; per il resto penso che hai fatto un errore di copia incolla; o se no VisualC non funziona bene...
codice:#include <stdlib.h> #include <stdio.h> void swap(int *a, int *b){ int temp = *a; *a = *b; *b = temp; } int * genRPerm(unsigned int n){ int *vect = (int *)malloc(n * sizeof(int)); unsigned int i; for(i = 0; i < n; i++) vect[i] = i; for (i = n-1;i >= 0;i--) swap(&vect[i],&vect[(int) ((rand()/(1.0 + RAND_MAX)) * (i+1))]); return vect; } int main(){ unsigned int n = 0; printf("Inserire il numero di numeri da generare: "); scanf("%d", &n); int *perm = genRPerm(n); unsigned int i; printf("\n\nPermutazione generata:\n\n"); for(i = 0; i < n; i++) printf("%d ", perm[i]); free(perm); return 0; }

Rispondi quotando