Ciao,
Io userei una struttura, il primo elemento è il valore e il secondo il suo indice.
codice:
#include <stdio.h>
#include <stdlib.h>
#define MAX 15
typedef struct vettore {
int elemento;
int indice;
} VET;
int main()
{
VET w[MAX],temp;
int i,j;
for (i=0;i<MAX;i++) // carico un vettore random
{ w[i].elemento=rand()%100+1;
w[i].indice=i;
}
for (i=MAX-1; i>0; i--) // ordino vettore
for(j=0; j<i; j++)
if ( w[j].elemento < w[j+1].elemento )
{
temp=w[j];
w[j]=w[j+1];
w[j+1]=temp;
}
// stampa di prova
for (i=0;i<MAX;i++)
printf("Valore-> %d , Indice-> %d \n",w[i].elemento,w[i].indice);
system("PAUSE");
}
La funzione di ordinamento è un bubble sort, non molto efficiente per molti elementi, però l'dea è questa.
Ciao.