#define N 5
#include <iostream>
using namespace std;
void mysort(int a[],int b[],int n){
int i,j,c[n],tmp;
for(i=0;i<n;i++) c[i]=i+1;
for(i=0;i<n-1;i++)
for(j=i+1;j<n;j++)
if (a[i]>a[j]){
tmp=a[i];a[i]=a[j];a[j]=tmp;
tmp=c[i];c[i]=c[j];c[j]=tmp;
}
for(i=0;i<n;i++)
b[c[i]-1]=i+1;
}
void printit(int a[],int n){
for(int i=0;i<n;i++)
cout<<a[i]<<" ";
cout<<endl;
}
int main(){
int a[N]={5,15,40,2,18};
int b[N],i;
for(i=0;i<N;i++) b[i]=i+1;
cout<<"排序前的a:";
printit(a,N);
cout<<"排序前的b:";
printit(b,N);
mysort(a,b,N); //进行排序运算
cout<<"排序后的a:";
printit(a,N);
cout<<"排序后的b:";
printit(b,N);
}
![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/e4dde71190ef76c6367020829116fdfaae5167fd?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)
追问你的b不对啊,哦,看错了,谢了