A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© qilu93 中级黑马   /  2015-10-20 21:02  /  836 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

冒泡排序每一趟排序把最大的放在最右边。
比如:
87 12 56 45 78
87和12交换:12 87 56 45 78
87和56交换:   56 87 45 78
87和45交换:      45 87 78
87和78交换:         78 87
到此第一趟排序结束,接下来的每一趟排序都是这样。
比如:
  #include<stdio.h>
void Print(int *num, int n)
{
    int i;
    for(i = 0; i < n; i++)
        printf("%d ", num[i]);
    puts("\n");
    return;
}
void Bubble_Sort(int *num, int n)
{
    int i, j;
    for(i = 0; i < n; i++)
    {
        for(j = 0; i + j < n - 1; j++)
        {
            if(num[j] > num[j + 1])
            {
                int temp = num[j];
                num[j] = num[j + 1];
                num[j + 1] = temp;
            }
            Print(num, n);
        }
    }
    return;
}
int main()
{
    int num[8] = {87, 12, 56, 45, 78};
    Bubble_Sort(num, 5);
    return 0;
}  


2 个回复

倒序浏览
重新看看
回复 使用道具 举报
看看  学习学习
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马