Ordinamento (programmazione in C)/var

Da Wikiversità, l'apprendimento libero.

Variante del programma in c++:


#include <iostream>

using namespace std;

void BubbleSort(int *array, int elemN)

{

int i, t, ultimo;

int alto=elemN; /* elemN è il numero degli elementi del vettore da ordinare */

while (alto>=0) /* in questo modo si evita 1 passaggio*/

{

ultimo=-1;

for (i=0; i<alto-1; i++)

{

if (array[i]>array[i+1]) /* sostituire ">" con "<" per avere un ordinamento decrescente */

{

t=array[i];

array[i]=array[i+1];

array[i+1]=t;

ultimo=i;

}

}

alto=ultimo;

}

return;

}

int main()

{

int N, i;

cout<<"Quanto deve essere lungo il vettore?";

cin>>N;

int v[N];

cout<<"Inserisci i valori";

for (i=0;i<N;i++)

cin>>v[i];

BubbleSort(v, N);

cout<<"I valori ordinati sono:"<<endl;

for (i=0;i<N;i++)

cout<<v[i]<<endl;

}