今天我们来用C语言实现一下冒泡排序

首先我们来了解一下什么叫做冒泡排序,冒泡顾名思义把质量轻的气体(如二氧化碳一样)浮到水面上(如可乐中的二氧化碳),因此冒泡排序的原理就是N个元素在一个周期中,微观上依次进行两两元素的比较,小的元素就被放在前面,大的元素放在后面,以此来进行N-1个周期,来完成冒泡排序。
上文中的一个周期,即外循环,依次进行比较,即内循环。
文字看着很迷糊?没事儿,上图
如图所示,两两元素依次进行比较,小的元素往前移动,大的元素往后移动,直至元素顺序是升序的形式,即移动了 元素-1 个周期
图看明白了,还不知道该怎么写代码?这就上!
#include <stdio.h>
#include <string.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 < nums ; i++) {//外层循环,表示来回多少次
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; a < nums; a++) {
printf("%d ", n[a]);
}
printf("\n\n");
}
}
printf("最终交换后的结果:");
for (int a = 0; a < nums; a++) {
printf("%d ", n[a]);
}
printf("\n");
}
代码同时把每次循环的结果都进行了输出,方便观察排序的结果,同时也可以和图片进行比较
这里对代码一些小细节进行一下说明
首先就是sizeof()函数,这个函数使用时必须要引用头文件string.h,他的用法就是计算内容的字节,int型占4个字节 n数组有9个int型的元素,所以占36个字节,除以int型的4字节,就是他的数组元素个数。
有人会好奇,明明写了一个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上面,这一步b对a的值传输已经结束,最后一步就是把temp的值赋予到b上。大功告成,a,b的值交换成功。
相关推荐:
为什么“360收录”是你网站推广的必备利器,seo亚马逊
seo需要买什么,seo需要考虑什么 ,ai做表头
seo要学什么技术,seo要学什么技术好 ,ai.fale
实用AI工具:提升效率、优化生活的科技利器
seo网赚什么意思,网站seo赚钱 ,ai打不开ai
seo适用于什么领域,seo适用于什么领域中 ,ai智能翻译写作机器人v1.0
目前最火的AI软件有哪些?深度解析必备工具
SEO站内优化:提升网站排名的核心策略,厦门市网站优化企业
SEO项目:如何通过精确优化提升企业网站排名与转化率,武汉做网站优化的公司
SEO项目指的是什么,seo项目指的是什么意思 ,写个ai
AI工具,让工作效率翻倍:AI工具教程全面解析
优方法-高效生活与工作的秘密武器,钻石营销推广方案
ChatGPT全球宕机:人工智能的崩塌与未来的挑战,中国ai和美国ai教父
SEO提供:如何通过精准的SEO策略提升网站流量与品牌影响力,刷关键词排名立的火星
ChatGPT:如果您正在使用VPN,这些技巧您一定要知道!,AI换脸*H
AI热门软件,未来科技的钥匙
为什么seo推广那么多,seo推广难吗 ,东莞ai听译平台
自动写文章AI:高效创作工具,开启写作新纪元
优化软件:让电脑性能焕然一新,提升效率的秘密武器,大理网站推广招聘信息最新
SEO桔子:提升网站排名的必备法宝,seo外包销售
ChatGPT不能打开EL?揭秘这一困扰背后的真相与解决方案,ai被动房
SEO新人必读:从零开始SEO的核心技巧与实践指南,网站邮件推广设计
SEO工装裤-打造时尚与实用兼备的工作利器,ai画中国爸爸辅导孩子写作业
文章生成AI:让写作轻松高效的神奇工具
ChatGPT网络故障报告从协调世界时(UTC)晚上1107左右开始激增,15分钟内引发广泛关注,ai无视进化
SEO子-为你的网站注入流量的秘密武器,麻城网站网址优化
ChatGPT最近不好用了?了解这些背后的原因与解决方案,ai sketcher
AI一键生成原创文章,让创作更高效更轻松!
seo软件是什么职位,seo用的是什么软件 ,ai感知树
seo站内优化包括什么营销,seo站内优化操作流程 ,ai 玻璃图标
文章缩写AI:高效编辑的未来之光
用AI征文工具,轻松创作出精彩文章!
ChatGPT已识别但不可用?揭秘背后原因与解决方案!,小狸ai和斑马ai语文
未来写作新方式原创AI文章的无限可能
为什么要seo 运营,为什么需要seo ,ai人物头盔
SEO在线服务-让您的网站快速跃升至搜索引擎前列,江西小红书营销推广案例
产品seo什么意思,产品seo标题是什么 ,ai模仿张宇
ChatGPT页面空白不乏登录:让你秒变职场高手与生活智囊,百度ai 腾讯ai
SEO组织:让您的网站流量倍增的秘密武器,seo 绩效标准
ChapGPT免费爬墙,轻松访问全球互联网资源!,蜜桃ai插画
seo稿件是什么意思,seo文章写作要求 ,ai写作未来展望和展望
优化原理:提升效率、创新突破的核心法则,印刷包装推广有哪里网站
AI免费试用不需要登录:体验智能科技的魅力,轻松开启未来,华为ai身材
优化标题:如何让你的文章更具吸引力与点击力,整站网站优化解决方案
GPT-3模型下载:开启智能时代的无限可能,ai走入
AI人工智能:开发与应用的必备软件推荐
ChatGPT暂时不可用?如何高效应对并寻找最佳替代方案!,logo ai教程视频
什么是seo概念,什么是seo,sem ,ai音标谐音
SEO总结:如何通过优化提升网站排名与流量,关键词排名消失
京东业绩再创新高:未来电商巨头的成功之道,如何做seo优化留痕