ciao a tutti,
ho questo piccolo programma che "dovrebbe" ordinare gli elementi di un vettore. Il programma viene compilato correttamente ma si blocca durante l'esecuzione al momento della chiamata alla funzione "ordinavet":
dove sbaglio?codice:#include <iostream> #include <cstdlib> void leggi (int vet[], int &p); void ordinavet (int vet[], const int &p); void stampa (int vet[], int &p); int main(int argc, char *argv[]) { int vet[50], n; n=0; cout<<"Inserire la dimensione del vettore (MAX 50)\n"; cin>> n; cout<<"Inserire gli elementi del vettore\n"; leggi(vet, n); cout<<"VETTORE ORDINATO\n"; ordinavet(vet, n); stampa(vet, n); system("Pause"); return 0; } void leggi (int vet[], int &p) { int i; for(i=0; i<p;i++) { cout<<"vet["<<i<<"]:"; cin>>vet[i]; } } void stampa (int vet[], int &p) { int i; for(i=0; i<p;i++) { cout<<"vet["<<i<<"]:"; cout<<vet[i]<<"\n"; } } void ordinavet (int vet[], const int &p) { int i; int temp; int j; j=0; temp=0; for (i=0; i<p-1; i++) for (j=i+1; i<p; j++) if (vet[i]<vet[i+1]) { temp=vet[i+1]; vet[i+1]=vet[i]; vet[i]=temp; } }
ciao!

Rispondi quotando