Questo è il codice corretto:
codice:#include <stdio.h> #include <stdlib.h> void funzione (int *myarray); int main() { int k; int arr[10]= {2,5,12,65,35,34,69,66,19,147}; funzione (arr); for (k=0; k<10; k++) printf ("%d\n", arr[k]); return 0; } void funzione (int *myarray) { int i, j, temp, min; for (i=0; i<9; i++) { min=i; for (j=i+1; j<10; j++) { if (myarray[min]> myarray[j]) min = j; } temp=myarray[min]; myarray[min] = myarray[i]; myarray[i] = temp; } }
Scambiavi l'elemento di posto j, mentre devi scambiare l'elemento di posto i.
PS. Può essere migliorato ma intanto funziona.
![]()

Rispondi quotando