冒泡排序 c语言,冒泡排序(C语言)
算法步骤
比较相邻的元素。如果第一个比第二个大,就交换他们两个。
对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最大的数。
针对所有的元素重复以上的步骤,除了最后一个。
持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。
动图演示
#include
#include
#include
#include
#include
//交换数值
void swap(int *a,int *b)
{
int temp = *a;
*a = *b;
*b = temp;
}
//打印数组
void printArray(char msg[],int arr[],int len){
printf("%s:",msg);
for (int i = 0; i < len; i++){
printf("%d ", arr[i]);
}
printf("\n");
}
//冒泡排序
void bubble_sort(int a[],int len){
for(int i=0;i
for(int j=0;j
if(a[j]>a[j+1]){
swap(&a[j],&a[j+1]);
}
}
printf("第%d轮",i+1);
printArray("",a,len);
}
}
int main()
{
int len=10;
int arr[len];
srand((unsigned)time(NULL));
//随机生成长度为"len"的数组
for(int i=0;i
arr[i]=rand()%200;
}
printArray("未排序前",arr,len);
bubble_sort(arr,len);
printArray("冒泡排序",arr,len);
//防止windows下控制台窗口闪退
int s;
scanf("%d",&s);
return 0;
}
结果:
未排序前:154 140 168 88 99 138 173 62 51 153
第1轮:140 154 88 99 138 168 62 51 153 173
第2轮:140 88 99 138 154 62 51 153 168 173
第3轮:88 99 138 140 62 51 153 154 168 173
第4轮:88 99 138 62 51 140 153 154 168 173
第5轮:88 99 62 51 138 140 153 154 168 173
第6轮:88 62 51 99 138 140 153 154 168 173
第7轮:62 51 88 99 138 140 153 154 168 173
第8轮:51 62 88 99 138 140 153 154 168 173
第9轮:51 62 88 99 138 140 153 154 168 173
冒泡排序:51 62 88 99 138 140 153 154 168 173
冒泡排序 c语言,冒泡排序(C语言)相关推荐
- c语言冒泡排序(解析)
c语言冒泡排序(解析) 运行结果:
- 冒泡排序c java c,冒泡排序,c语言冒泡排序法代码
冒泡排序,c语言冒泡排序法代码 冒泡排序 冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法. 它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小.首字 ...
- c语言冒泡排序法程序填空_【C语言】两种方式实现冒泡排序算法
题目要求 编写一个C语言程序,实现基本的冒泡排序算法. 算法 冒泡排序,用一句话来总结: 一组数中,相邻的两个数进行比较.交换,将最大(小)数交换至尾(首)部,即完成了一次冒泡排序 要想对N个数字进行 ...
- C语言——冒泡排序法
C语言--冒泡排序法 问题描述: 1, 3, 2, 6, 4, 5, 9, 8, 10, 7进行从小到大排序 代码: # include <stdio.h>int main() {int ...
- c语言冒泡排序字母排序,排序与查找之冒泡排序篇(C语言实现)
在进行冒泡排序C语言实现之前,先介绍冒泡排序,只有真正理解了冒泡排序的算法,才能从本质上理解C语言的实现过程 冒泡排序原理: 冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法 ...
- C语言冒泡排序(起泡法)
C语言冒泡排序(起泡法) 冒泡法排序是C语言中较简单的 排序算法 的 . 定义:它重复地走访过要排序的元素列,依次比较两个相邻的元素,让较大的元素逐渐往后移动(交换两个元素的值),直到数组的末尾.如此 ...
- c语言冒泡排序法代码(c语言冒泡排序法代码讲解)
求一个C语言冒泡排序法的简单程序怎么办? 下一趟排序开始时,R[1..lastExchange-1]是有序区,R[lastExchange..n]是无序区.这样,一趟排序可能使当前有序区扩充多个记录, ...
- TIA博途中实现冒泡排序的两种SCL语言算法
TIA博途中实现冒泡排序的两种SCL语言算法 TIA博途软件版本:V15.0 首先新建一个项目(具体过程这里就不演示了),添加一个FC块(或FB块均可),编程语言选择SCL,如下图,在FC的块接口中, ...
- C语言——冒泡排序(分析详解)
冒泡排序 文章目录 冒泡排序 排序算法的介绍 排序的分类 (1)内部排序: (2)外部排序法: [重点]冒泡排序 1.基本介绍 2.冒泡排序应用实例 3.分析冒泡的过程+代码 排序算法的介绍 排序也称 ...
- c语言—冒泡排序(详解)
目录 一.了解冒泡排序 二.冒泡排序的实现 字符数组 算法实现 一.了解冒泡排序 冒泡排序(Bubble Sort):相比起二分法查找只能应用于有序数列,冒泡排序可以将无序数列变为有序数列:冒泡排序, ...
最新文章
- “金融与安全大数据”专题导读
- platform_device_add()函数分析
- MySQL比较两个表数据差异,在t2表而不在t1表的数据
- 突然想起今天的博客汇报没写
- abb机器人gsd文件_ABB机器人控制器死机故障维修
- windows10便签在哪,windows电脑版便签工具在哪里打开
- 天马行空 | 假如上网装X需要花钱?
- 微信小程序的购物车功能
- OLED的中英文和图片显示
- CiteSpace采用WOS导入文献数据分析(四)
- 如何看待培训机构出来的非科班程序员
- 什么是python自动化测试?
- Cisco Packet Tracer 超网(CIDR)设置实验
- 高权重网站站长之家,站长专栏申请暂时关闭了!
- Android钢琴滑动代码,真正完美的android钢琴软件
- react-native-calendars的使用
- 【Python-5】Conditionals Control Flow
- 计算机网络基础结构;对等网的特点;网络的扩大;网络的拓扑结构;
- idea springboot,maven项目注解,引用等飘红
- 三十七. geotrellis使用 COG 基础介绍
热门文章
- 【Python-3.5】matplotlib做简单折线图
- sqlserver 事务日志过大 收缩方法解决方案
- WebStorm光标经常自动变为块状解决方案
- Android Studio support 26.0.0-alpha1 Failed to resolve: com.android.support:appcompat-v7:27.+ 报错解决方法
- System.IO.FileNotFoundException 找不到指定的模块问题解决
- NestedScrollView、ScrollView 加载完自动滑动至底部问题的解决方案
- 检查丢失的软件包并安装它们的优雅方法?
- Bash脚本和/ bin / bash ^ M:错误的解释器:没有这样的文件或目录[重复]
- git merge和git merge --no-ff有什么区别?
- 我如何知道Bash脚本中的脚本文件名?