电子开发网

电子开发网电子设计 | 电子开发网Rss 2.0 会员中心 会员注册
搜索: 您现在的位置: 电子开发网 >> 编程学习 >> C语言 >> 正文

冒泡排序c语言_C语言实现冒泡排序

作者:佚名    文章来源:本站原创    点击数:    更新时间:2023/8/9

冒泡排序作为学习排序最基本的算法,具有稳定性与实用性。

下面是C语言冒泡排序的源代码

#include
int main(void)
{
    int a[10]={6,4,3,2,7,8,9,10,1,5};
    int i,k,w;
    for(i=0;i<9;i++)
    {
        for(k=0;k<9-i;k++)
        {
            if(a[k]>a[k+1])
            {
                w=a[k];
                a[k]=a[k+1];
                a[k+1]=w;
            }
        }
    }
    for(i=0;i<10;i++)
    {
        printf("%d ",a[i]);
    }
 }  

以下是输出的结果

 

下面进行代码讲解:

c语言冒泡法 

如果前一位的数字大于后一位的,那么这两个数字交换位置,因此,最大的数字在第一轮循环中不断像一个气泡一样向上冒,在第一轮循环结束后排在最后一个(最右边),接着进行下一轮循环,由于这个最大的数在第一轮循环中已经打遍天下无敌手,大家认可了它的实力,第二轮比武他就可以不用参与了,则我们比较的次数变成9-1=8->我们得到了节省内存的算法,由此类推,数字一个个排序进行。

Warning:

 

博主在期末考试的时候犯了一个傻乎乎的错误,内外层循环变量整的一样的,结果人家i循环了一遍跑了(详情请看上面的代码)提醒大家不要犯错哦

Tags:冒泡排序,排序,C语言  
责任编辑:admin
请文明参与讨论,禁止漫骂攻击。 昵称:注册  登录
[ 查看全部 ] 网友评论
关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 在线帮助 - 文章列表
返回顶部
刷新页面
下到页底
晶体管查询