当前位置: 首页 > 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/a/136885.html

相关文章:

  • Pinpoint 是一个开源的分布式追踪系统
  • 如何增加多行内容到文件
  • 跟我学c++中级篇——C++中的缓存利用
  • 大模型应用技术系列(三): 深入理解大模型应用中的Cache:GPTCache
  • 普通人怎么入门学习并使用AI?
  • 实现点击表格中的邀请码并复制到剪贴板的功能
  • 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 功能