C语言算法---冒泡排序算法
2020.08.07
C语言分享
●
●
●
#01#前言
情景:
观察水中的气泡往上冒的情景,有什么特点呢?
冒泡排序和气泡在水中不断往上冒的情况有些类似。气泡大的(大的数据)在下面,气泡小的(小的数据)在上面。
冒泡排序的基本原理
对存放原始数据的数组,按从前往后的方向进行多次扫描,每次扫描称为一趟。当发现相邻两个数据的次序与排序要求的大小次序不符合时,即将这两个数据进行互换。这样,较小的数据就会逐个向前移动,好象气泡向上浮起一样。
本文分成三部分:
1、算法介绍
2、具体代码演示及说明
3、讨论区
#OVER#
#02#具体代码及说明
举例题目:
用冒泡排序法对任意输入的 10 个数按照从小到大的顺序进行排序。
#include <stdio.h>
int main()
{
int i,j,t,a[11]; //定义变量及数组
printf("请输入10个数:\n");
for(i=1;i<11;i++)
scanf("%d",&a[i]); //从键盘中输入10个数
for(i=1;i<10;i++) //变量i代表比较的趟数
for(j=1;j<11-i;j++) //变量j代表每趟两两比较的次数
if(a[j]>a[j+1])
{
t=a[j]; //次序不符合时利用中间变量实现两两互换
a[j]=a[j+1];
a[j+1]=t;
}
printf("排序后的顺序是:\n");
for(i=1;i<=10;i++)
printf("%5d",a[i]); //将冒泡排序后的顺序输出
printf("\n");
return 0;
}
#OVER#
#03#运行结果
请输入10个数:
91 86 50 94 72 65 21 75 34 33
排序后的顺序是:
21 33 34 50 65 72 75 86 91 94
#OVER#
●
●
●
视频来源:科学大世界
文字:科学大世界
文章封面图:网络
转载请声明:科学大世界
😘😘😘
觉得不错点个在看呗
2020/08/07