C语言—冒泡排序

        冒泡排序的核心思想:两个相邻的元素进行比较。

        一趟冒泡排序让一个数据来到它最终应该出现的位置上。

#include <stdio.h>

void bubble_sort(int arr[],int sz)
{
	int i = 0;
	int j = 0;
	int t = 0;
	for(i = sz-1;i >= 0;i--)
		for(j = 0;j < i;j++)
			if(arr[j+1] < arr[j])
			{
				t = arr[j];
				arr[j] = arr[j+1];
				arr[j+1] = t;
			}
}

int main()
{
	int arr[10] = {10,2,3,14,5,6,17,8,9,1};
	int i = 0;
	int j = 0;
    int sz = sizeof(arr) / sizeof(arr[0]);
	bubble_sort(arr,sz);
	for(i = 0;i < 10;i++)
		printf("%d\n",arr[i]);
	return 0;
}

        数组名本质上是:数组首元素的地址。

        地址应该使用指针来接收,所以上面bubble_sort()函数中的形参int arr[ ]看似是数组,本质上是指针变量,所以不能在函数内部计算数组的大小,可以在主函数内计算了之后通过传参传递到函数内部。

相关推荐

  1. C语言 冒泡排序

    2024-03-10 05:28:06       23 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-10 05:28:06       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-10 05:28:06       100 阅读
  3. 在Django里面运行非项目文件

    2024-03-10 05:28:06       82 阅读
  4. Python语言-面向对象

    2024-03-10 05:28:06       91 阅读

热门阅读

  1. D. Exam in MAC - 思维

    2024-03-10 05:28:06       41 阅读
  2. 简单的base64转pdf

    2024-03-10 05:28:06       32 阅读
  3. 003-ES6常用语法

    2024-03-10 05:28:06       43 阅读
  4. ES6 面试题

    2024-03-10 05:28:06       33 阅读
  5. C语言入门学习 --- 8.实用调试技巧

    2024-03-10 05:28:06       47 阅读
  6. HTML常见标签(一)

    2024-03-10 05:28:06       42 阅读
  7. flink: 通过Sink将数据写入MySQL

    2024-03-10 05:28:06       38 阅读
  8. NERF论文笔记(1/2)

    2024-03-10 05:28:06       39 阅读
  9. ArrayList 和 LinkedList 的区别

    2024-03-10 05:28:06       38 阅读
  10. List--splice使用技巧

    2024-03-10 05:28:06       41 阅读
  11. [xilnx zynq]petalinux u-boot_fw编译不过

    2024-03-10 05:28:06       46 阅读
  12. 自定义一个简单的iOS图片缓存类

    2024-03-10 05:28:06       40 阅读
  13. nginx 基于IP的多虚拟主机配置

    2024-03-10 05:28:06       44 阅读