scambia()... Effettua uno scambio, accetta 2 indirizzi di interi.
la funzione bubblesort() è il cuore, effettua il bubblesort di un array e definisce la dimensione di n elementi da scambiare.
#include <stdio.h> #include <stdlib.h> void scambia(int *a, int *b) { int temp=*a; *a=*b; *b=temp; } void bubblesort(int array[], int dim) { int i=0,j=0, temp=0; while(i<dim) { for(j=0; j<dim; j++) { if( ( array[i] < array[j]) ) scambia(&array[i], &array[j]); } i++; } } void stampa(int array[], int dim) { int i=0; for(i; i<dim; i++) printf("%dt",array[i]); } int main() { int array[]={ 24, 78, 15, 18, 99, 63, 90, 110, 47 }; int dim=sizeof(array) / sizeof(int); // calcola la dimensione dell'array, ovvero il numero di elementi. printf("La dimensione della array e' : %d", dim ); printf("nnNumeri disordinati:n"); stampa(array,dim); printf("nNumeri ordinati, crescenti:n"); bubblesort(array,dim); stampa(array,dim); system("pause>nul"); }
Aggiungi un commento