Vorrei ordinare un vettore (in maniera crescente) e ho usato questa funzione ma c'è qualcosa che non va. Ad esempio quando dò come

Input :1 3 0 5 mi esce Output:1 3 0 5 oppure
Input :2 3 0 1 mi esce Output: 1 0 2 3 !!

codice:
void ordinamento(vettore v,int &riemp)
{

 for(int i=0;i<riemp;i++)
  {
    int imin;
    int temp;
    imin=i;
    for(int k=i+1;k<riemp;k++)
     {
      if(v[k]<v[imin])
       {
        imin=k;
       }
      temp=v[i];
      v[i]=v[imin];
      v[imin]=temp;  
      }
   }   
}
Grazie per l'aiuto