你好,游客 登录 注册 搜索
背景:
阅读新闻

[排序算法]冒泡排序之C语言实现

[日期:2017-01-06] 来源:Linux社区  作者:metalsteel [字体: ]

一,冒泡排序介绍及原理

 基本概念:依次比较相邻的两个数,大的数往后放,小的数往前面放。

 原理介绍:

 

 二,冒泡排序的C语言实现

 根据上图的原理,我们编写C语言的冒泡排序实现

# include <stdio.h>
// 排序函数
void sort(int * p,int len)
{
    for(int i=0;i<len;i++)
    {
        // 第二层循环,随着外层循环次数的递增是递减的,因为排序一次,就已经把大的数放到后面了,就不需要再次排它了
        for(int j=0;j<len-i-1;j++)
        {
            if(p[j]>p[j+1])
            {
                int temp = p[j];
                p[j] = p[j+1];
                p[j+1] = temp;
            }
        }
    }
}
// 输出函数
void console(int * p,int len)
{
    for(int i=0;i<len;i++)
    {
        printf("%d  ",p[i]);
    }
    printf("\n");
}
int main(void)
{
    // 要排序的数组
    int arr[7] = {6,9,8,3,4,1,2};

    // 调用排序函数
    sort(arr,7);

    // 输出排序结果
    console(arr,7);

    return 0;
}

本文永久更新链接地址http://www.linuxidc.com/Linux/2017-01/139259.htm

linux
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款