C语言冒泡排序法代码,c语言实现冒泡排序算法,C语言冒泡排序算法代码详解

C语言冒泡排序法代码,c语言实现冒泡排序算法,C语言冒泡排序算法代码详解

大家好,本文主要讲C语言冒泡排序算法代码的详细讲解。有兴趣的同学过来看看,如果对你有帮助记得收藏。

今天我们用C语言实现冒泡排序。

首先,我们来了解一下什么是冒泡排序。气泡,顾名思义,就是把轻气体(像二氧化碳)浮到水面上(像可乐里的二氧化碳)。所以,冒泡排序的原理是在一个周期内将N个元素按微观顺序相互比较,小元素在前,大元素在后,从而完成N-1个周期的冒泡排序。

本文依次比较一个循环,即外环,即内环。

字看起来很乱?没事,上图

如图所示,成对元素依次比较,小元素前移,大元素后移,直到元素顺序为升序,即元素移动-1个周期。

看懂了图,还是不知道代码怎么写。这就去。

#包含stdio.h

#包含字符串. h

int main()

{

int n[9]={ 3,1,6,5,9,7,8,2,4 };

int nums=sizeof(n)/sizeof(int),temp,I;

for(I=1;i numsI) {//外部循环,指示来回多少次

for(int j=nums-1;j=I;j-)//内部循环指示将比较多少次往返。注意数组下标,不要越界。

{

Printf('当前I的值:%d ',I);

Printf('当前j的值:%d ',j);

if (n[j-1] n[j]) {

temp=n[j-1];

n[j-1]=n[j];

n[j]=temp;

}

Printf('本次交换的结果:');

for(int a=0;一个numsa ) {

printf('%d ',n[a]);

}

printf(' \ n \ n ');

}

}

Printf('最终交换后的结果:');

for(int a=0;一个numsa ) {

printf('%d ',n[a]);

}

printf(' \ n ');

}

同时代码输出每个周期的结果,方便观察排序后的结果,也可以图片对比。

下面是代码的一些小细节。

首先是sizeof()函数。使用该函数时,必须参考头文件string.h,其用途是计算内容的字节。int类型占用4个字节。n数组有9个int类型的元素,所以占用36个字节。除以4个字节的int类型,就是他的数组中元素的个数。

有人会好奇,明明写了个n[9],为什么还要费事写这个计算表达式?其实很多情况下,给定的数组不会那么简单明了,所以我们最好通过计算来计算数组元素的个数。

第二个问题是有些白人会卡在这个if判断语句里,不知道怎么实现。

if (n[j-1] n[j]) {

temp=n[j-1];

n[j-1]=n[j];

n[j]=temp;

}

其实很简单,找个中间值就行了。这里假设要交换A和B的值,我们会在这里设置一个中间值,通常设置为temp,把A的值赋给temp(那么现在就相当于有两个A,现在我们改变A本身的值,temp的值不会变)。此时,我们可以将B的值赋给a,这一步已经结束,最后一步是将temp的值赋给B,大功告成。A和B的值交换成功。

以上就是本文关于C语言冒泡排序算法的详细解释代码。有关C语言冒泡排序的更多信息,请搜索我们以前的文章或继续浏览下面的相关文章。希望大家以后能多多支持我们!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • c语言调用退出函数 c语言退出整个程序怎么写
  • c语言中怎么给函数初始化 c语言的初始化语句
  • c语言编写函数计算平均值 c语言求平均函数
  • 详解c语言中的字符串数组是什么,详解c语言中的字符串数组结构,详解C语言中的字符串数组
  • 表达式求值c++实现,c语言实现表达式求值
  • 看懂c语言基本语法,C语言详解,C语言的基本语法详解
  • 用c语言实现快速排序算法,排序算法设计与实现快速排序C语言,C语言实现快速排序算法实例
  • 深入解析c语言中函数指针的定义与使用方法,深入解析c语言中函数指针的定义与使用情况,深入解析C语言中函数指针的定义与使用
  • 描述E-R图,E-R图举例,关于C语言中E-R图的详解
  • 折半查找法C语言,折半查找算法(算法设计题)
  • 折半查找法C语言,c语言折半法查找数据,C语言实现折半查找法(二分法)
  • 扫雷小游戏c++代码设计,c语言扫雷游戏源代码,C语言实现扫雷小游戏详细代码
  • 怎样统计程序代码行数,C语言统计行数,C#程序员统计自己的代码行数
  • 基于c语言的贪吃蛇游戏程序设计,用c语言编写贪吃蛇游戏程序,C语言实现简单的贪吃蛇游戏
  • 图的两种遍历算法,图的遍历算法代码c语言,Python算法之图的遍历
  • 留言与评论(共有 条评论)
       
    验证码: