栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

c语言冒泡排序详解

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

c语言冒泡排序详解

冒泡排序是什么?先看看书上的定义

说真的,这本书对新手来说一点都不友好,新手只要看第一句话就行,继续看 下去他除了迷惑你之外一点用处都没有,生怕你学会一样。

没错,这段代码没有注释,要是注释有用的话还要人讲干嘛?并且也不用函数调用什么的,只是讲冒泡的一个思维。

首先头文件会写吧?主函数会写吧?数组会定义并且会写9到0吧?

这个程序的目的是从小到大排序知道吧?

先从两个for循环开始讲(两个for的时候内层的for先执行完,外层的for才会加+1,怕有些人不知道)

 第一个for定义了一个i用来控制循环的趟数,一共是9趟。说人话就是:从9到0,一共是10个数,你要从小到大排序,那就把最小的数一个个扔在前面,扔9次不就能排好10个数了?

第二个for定义了一个j,j=9表示从最后一个数开始,因为数组的下标是从0开始的,所以9就表示第10个数了,而我们这个代码的比较也是从后面开始的。那么j为什么要大于i?因为内层for每次循环完(这里的循环完表示跳出内层循环,外层循环+1)不就把一个最小的数放在前面了吗?对于排好的数那就没必要每次再比较一次吧?所以就随着i每次的增加,比较的数就相应的减少

 接下来就到了if判断,这里判断的是后一个数是否比前一个数小,如果小的话就交换,因为是从小到大排序。交换的话应该都会吧?其实顺序无所谓,只要最后完成交换就行了,定义一个变量用来存放数组的元素,然后其中一个数组赋值给另外一个数组,再把变量赋值给没有赋值过的数组。

 最后再把排序好的打印出来就行。

总结一下吧,冒泡排序,也就是每次比较相邻两个数的大小,你可以根据自己是从大到小排序还是从小到大排序来判断,当然也可以从头开始比较,也可以从后面开始来比较,看个人,再玩得花点的也可以用函数传参,我这里只是讲冒泡的一个思路。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/718004.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号