Scusami, ma perchè vettore è un puntatore ?Originariamente inviato da GliderKite
Quoto. Allora la questione funziona cosi:
-) Definisci la dimensione massima del vettore (numero di elementi massimi che potrà contenere)
-) Definisci il limite massimo per la somma degli elementi che andranno inseriti nel vettore (nel tuo caso 30)
-) Chiami una funzione che inserisce gli elementi nel vettore fino a quando il vettore non è pieno o la somma degli elementi inseriti è minore o uguale a 30.
-) Chiami un'altra funzione (una tra quelle che ti ho indicato va più che bene) per ordinare il vettore.
Questo è un esempio in modo che tu capisca l'ordine e la suddivisione del lavoro tra più funzioni:
codice:int main() { int size; printf( "Inserisci la dimensione massima del vettore: " ); scanf( "%d%*c", &size ); if( size >= 0 ) { int limite, elementi_inseriti; int *vettore = (int *) malloc( size * sizeof(int) ); printf( "Inserisci il limite per la somma degli elementi: " ); scanf( "%d%*c", &limite ); // Inserisce gli elementi nel vettore e torna il numero di elementi // effettivamente inseriti elementi_inseriti = fill( vettore, size, limite ); // Ordina il vettore (con funzione Insertion Sort) insertionSort( vettore, elementi_inseriti ); // Stampa gli elementi del vettore su video print( vettore, elementi_inseriti ); free( vettore ); } getchar(); return 0; }