写一个冒泡排序的函数,代码如下:

void bubble_sort(int arr[],int sz){    //确定冒泡排序的函数    int i = 0;    for ( i = 0; i < sz - 1; i++)    {        int flag = 1;//假设这一趟要排序的数值已经有序        //每一趟冒泡排序        int j = 0;        for ( j = 0; j < sz - 1 -i; j++)        {            if (arr[j]>arr[j + 1])            {                int tmp = arr[j];                arr[j] = arr[j + 1];                arr[j + 1] = tmp;                flag = 0;//本趟排序的数据其实不完全有序            }        }        if (flag == 1)        {            break;        }    }}int main(){    int arr[] = { 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 };    int i = 0;    int sz = sizeof(arr) / sizeof(arr[0]);    //对arr进行排序,排成升序    //arr是数组,我们对数组arr进行传参,实际上传递过去的是数组arr首元素的地址 &arr[0]    bubble_sort(arr,sz);//冒泡排序函数    for ( i = 0; i < sz; i++)    {        printf("%d ", arr[i]);    }    return 0;}

其中要注意的是,arr是数组,我们对数组arr进行传参,实际上传递过去的是数组arr首元素的地址 &arr[0],如果想求数组的元素个数就要先在外面求好再传参进去。


数组名数组首元素的地址。(有两个例外)
1.sizeof(数组名) - 数组名表示整个数组,sizeof(数组名)计算的是整个数组的大小,单位是字节。
2.&数组名,数组名代表整个数组,&数组名,取出的是整个数组的地址。


总结:
要区分我们传的是首元素的地址还是整个数组的地址,这两个的意义是不一样的。
2021.1.27
永远相傻瓜计算机

©著作权归作者所有:来自51CTO博客作者qq5ffb0698bd953的原创作品,如需转载,请注明出处,否则将追究法律责任

好知识,才能预见未来

赞赏

0人进行了赞赏支持

更多相关文章

  1. php数据类型
  2. PHP 数据类型的转换与检测|变量声明方式与使用|常量声明的方式与
  3. C语言的数组(上)
  4. php学习小结(php程序的运行原理、短标签的使用与html混编、常用数
  5. php的初步认识
  6. android从手机中获取通讯录时按名称排序
  7. Android(安卓)解析json对象,存放到List中
  8. android获取网络图片的用法
  9. GBD调试谷歌拼音输入法准备工作

随机推荐

  1. linux 下使用 vim+cscope+ctags+taglist+
  2. linux下socket实现TCP通信的简单程序接口
  3. 嵌入式linux 字节对齐 导致输出Alignment
  4. 0K6410学习之linux移植nand flash
  5. linux的常用命令
  6. linux安装PHP环境
  7. Linux 安装MongoDB 2.6.5
  8. Linux运维:安装CentOS7.2-图解
  9. 在Linux和FreeBSD之间移植bash脚本的正确
  10. 用VXE保护Linux系统安全