• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

c语言如何实现选择排序算法(代码示例)

c语言 搞代码 4年前 (2022-01-09) 62次浏览 已收录 0个评论

选择排序算法的基本思想就是依次选出数组最小的数放到数组的前面。在C语言中我们可以使用两个for循环,首先从数组的第二个元素开始往后遍历,找出最小的数放到第一个位置;再从剩下数组中找出最小的数放到第二个位置。以此类推,直到数组有序。

选择排序法的实现原理:

先判断最小的数的下标是不是 0,如果不是则说明最小的数不是第一个元素,则将这个数与第一个元素互换位置,这样一轮下来最小的那个数就被找到并放到了最左边。

代码示例:

使用选择排序法将一组手动输入的数据由小到大进行排序,数据分别为 52、36、2、39、56、45、78、92、15、52。

实现代码:

#include <stdio.h>int main(){    int i,j,t,a[11];    //定义变量及数组为基本整型    printf("请输入10个数:\n");    for(i=1;i<11;i++)        scanf("%d",&a[i]);    //从键盘中输入要排序的10个数字    for(i=1;i<=9;i++)        for (j=i+1;j<=10;j++)            if(a[i]>a[j])    //如果前一个数比后一个数大,则利用中间变量t实现两值互换            {                t=a[i];                a[i]=a[j];                a[j]=t;            }    printf("排序后的顺序是:\n");    for(i=1;i<=10;i++)        printf("%5d", a[i]);    //输出排序后的数组    printf("\n");    return 0;}

输出:

代码说明:

代码中使用了两个 for 循环语句。第一个 for 循环是确定位置的,该位置是存放每次从待排序数列中经选择和交换后所选出的最小数。第本文来源gaodai$ma#com搞$$代**码)网@二个 for 循环是实现将确定位置上的数与后面待排序区间中的数进行比较的。

以上就是c语言如何实现选择排序算法(代码示例)的详细内容,更多请关注搞代码gaodaima其它相关文章!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:c语言如何实现选择排序算法(代码示例)

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址