C语言排序算法积累(2)选择排序

选择排序法是一种排序算法,跟冒泡算法一样也是一种常用的排序算法。
例如将int arr[]数组内的元素按照升序排序

原理:通过循环嵌套,将前后两个数比较大小,如果前者比后者大,两者交换位置。


两个循环之间的关系比较紧密,切勿不可写错。


代码:

#include<stdio.h>
void main()
{
    //定义数组
    int arr[] = { 1,0,5,3,2,1,7,3,5,6 };
    //升序
    for (int i = 0; i < sizeof(arr) / sizeof(arr[0]) - 1; i++)
        for (int j = i + 1; j < sizeof(arr) / sizeof(arr[0]); j++)
            if (arr[i] > arr[j])//如果是降序则相反
            {
                int tmp = arr[i];
                arr[i] = arr[j];
                arr[j] = tmp;
            }
    for (int i = 0; i < 10; i++)
        printf("%d ", arr[i]);
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容