当前位置: 首页 > article >正文

C语言冒泡排序

小到大

#include <stdio.h>
#include <stdlib.h>

// 冒泡排序 从小到大
void max1()
{
	int a[8] = { 2,1,6,3,4,9,8,7 };
	printf("排序前是:\n");
	for (int i = 0; i < sizeof(a) / sizeof(int); i++)
	{
		printf("%d ", a[i]);
	}
	printf("\n");
	//外层循环
	for (int i = 0; i < sizeof(a) / sizeof(int) - 1; i++)
	{
		//内层循环  每次循环内存循环就总数组元素 - 外存循环次数 - 末尾最大所有不用在比较
		for (int j = 0; j < (sizeof(a) / sizeof(int) - i - 1); j++)
		{
			// 当前下标元素 > 相邻下标 就进行交换
			if (a[j] > a[j + 1])
			{
				int c = a[j]; // 临时存放最大值
				a[j] = a[j+1]; // 小值在前
				a[j+1] = c; // 大值在后
			}
		}
	}

	for (int i = 0; i < sizeof(a) / sizeof(int); i++)
	{
		printf("%d ", a[i]);
	}
	printf("\n");
}

int main()
{
	max1();
	system("pause");
	return EXIT_SUCCESS;
}

大到小

#include <stdio.h>
#include <stdlib.h>

// 冒泡排序 从小到大
void max1()
{
	int a[8] = { 2,1,6,3,4,9,8,7 };
	printf("排序前是:\n");
	for (int i = 0; i < sizeof(a) / sizeof(int); i++)
	{
		printf("%d ", a[i]);
	}
	printf("\n");
	//外层循环
	for (int i = 0; i < sizeof(a) / sizeof(int); i++)
	{
		//内层循环  每次循环内存循环就总数组元素 - 外存循环次数 - 末尾最大所有不用在比较
		for (int j = 0; j < (sizeof(a) / sizeof(int) - i - 1); j++)
		{
			// 当前下标元素 > 相邻下标 就进行交换
			if (a[j] < a[j + 1])
			{
				int c = a[j]; // 临时存放最大值
				a[j] = a[j+1]; // 小值在前
				a[j+1] = c; // 大值在后
			}
		}
	}

	for (int i = 0; i < sizeof(a) / sizeof(int); i++)
	{
		printf("%d ", a[i]);
	}
	printf("\n");
}

int main()
{
	max1();
	system("pause");
	return EXIT_SUCCESS;
}

http://www.kler.cn/news/136885.html

相关文章:

  • [Python学习日记-54] 软件开发目录设计规范
  • 机器视觉运动控制一体机在DELTA并联机械手视觉上下料应用
  • vue中选项式 API(Options API) 和 组合式 API(Composition API)区别
  • 【数据结构】快速排序(三种实现方式)
  • WebRTC音频 03 - 实时通信框架
  • 用户之认证
  • git 将本地已有的一个项目上传到新建的git仓库的方法
  • 使用activiti部署提示不是 ‘NCName‘ 的有效值
  • Playcanvas后处理-辉光bloom
  • C#入门(10):集合用法介绍
  • 如何利用 AI 写一本书并实现被动收入
  • 盘点35个Python书籍Python爱好者不容错过
  • 在Java代码中指定用JAXB的XmlElement注解的元素的顺序
  • 计时器 Timer(Kotlin Flow)
  • Active Directory 和域名系统(DNS)的相互关系
  • 串口工作流程硬核解析,没有比这更简单的了!
  • html常用的标签
  • 【前端知识】Node——http模块url模块的常用操作
  • IP地理位置定位技术:保护网络安全的新利器
  • meterpreter命令
  • js 深度学习(七)
  • Java高级编程-----网络编程
  • 效率提升利器:Automa插件的实用指南
  • 大数据基础设施搭建 - Kafka(with ZooKeeper)
  • clickhouse 业务日志告警
  • excel-gen.js 导出excel 功能