问答详情
源自:6-5 数组的应用(一)

求冒泡排序解释

我只是想知道怎么写,还有代码是什么意思?


提问者:nothing39 2017-02-17 16:25

个回答

  • 慕粉1238575637
    2017-03-20 23:03:53

    比如5,3,7,4四个数,先判断5和3,5比3大,调换位置,变成了3,5,7,4,再判断5和7,5比7小,不换位置,还是3,5,7,4,再判断7和4,7比4大,调换位置,变成3,5,4,7。这里轮完了一遍,效果是将四个数中最大的那个数放在了最后。剩下的就是再轮一遍,将倒数第二大的数放在倒数第二的位置。总共要轮3遍,将最大的三个数放在了后面,那自然最小的数就在最前头了。答案代码里,里面的for的作用就是连续判断相邻的数,最后把所有被判断的数中最大的放在后面,外面的for执行9次,将这十个数中最大的9个数按从小到大的顺序放在后面,那么剩下的那个最小的数自然放在了首位了。

  • Only_L
    2017-03-05 09:23:02

    说简单点就是,先拿出一个数和其他数相比,大的留下,然后再拿一个数和剩下的比,然后把大的留下,以此类推得到最终的排序结果。你自己看着代码想想看~

  • 阿泽同学
    2017-02-18 16:51:05

    这是我的程序代码你看看:

    int Px(int score[10])
    {
     int i, j;
     for (i = 9; i >= 1; i--)
     {
      if (score[i] <=score[i - 1])
      {
       j =score[i - 1];
       score[i - 1] = score[i];
       score[i] = j;
      }
     }
     printf("%s:", "排序");
     for (i;i<=9;i++)
     {
      printf(" %d",score[i]);
     }
    }

    你可以带入你的代码试试,,其含义是两两比较,大的往前放;小的往后放。