过程咋写啊,冒泡排序后编号对应的数就变了

img


过程不会写,冒泡排序后编号对应的数就变了。是不是不用冒泡排序写,有没有其他办法

你的代码看不见啊,兄弟
参考一下:

#include <stdio.h>
int main()
{
    int n,a[100],b[100],i,j,t;
    scanf("%d",&n);
    for(i=0;i<n;i++)
    {
        scanf("%d",&a[i]);
        b[i] = i+1;
    }
    for(i=0;i<n-1;i++)
      for(j=0;j<n-i-1;j++)
      {
          if(a[j] > a[j+1])
          {
              t = a[j];
              a[j] = a[j+1];
              a[j+1] = t;
              t = b[j];
              b[j] = b[j+1];
              b[j+1] = t;
          }
      }
    for(i=0;i<n;i++)
        printf("%d ",b[i]);
}

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632