Supongamos que tienes una estructura que llamaremos mierda. Para acceder a los miembros de mierda(en tu caso un int que llamaremos "poruntubo" i una cadena), haremos mierda.poruntubo para acceder a la variable int. Pues bien partiendo de aquí te paso una porcion de codigo que te ordenarà descendentemente los poruntubos de tus mierdas.
void hostiasquelio("vector de mierdas a ordenar")
{
int siguiente=1,i=0,temp;
while(siguiente){
siguiente=0;
for(i=0;i<NUM;i++)
{ if(mierda.poruntubo<mierda [i+1].poruntubo)
{temp=mierda.poruntubo;
mierda.poruntubo=mierda [i+1].poruntubo;
mierda.poruntubo=temp;
siguiente=1;
}
}
}
}