C语言编程创建自定义函数sort(),sort函数中实现选择法升序排序,主函数输出排序后的数组元素

主函数内定义了一维数组inta[10]={-5,-9,-8,3,9,2,-28,101,-395,0};要求创建自定义函数sort(),sort函数中实现选择法升序排序,... 主函数内定义了一维数组int a[10]={ -5,-9,-8,3,9,2,-28,101,-395,0};要求创建自定义函数sort(),sort函数中实现选择法升序排序,主函数输出排序后的数组元素。 展开
 我来答
My_Persistence
2017-12-21 · TA获得超过3470个赞
知道大有可为答主
回答量:1201
采纳率:81%
帮助的人:459万
展开全部
#include <stdio.h>
//选择排序算法,升序
void sort(int *arr,int n)
{
    int i,j,k;
    int tmp;
    for(i=0;i<n-1;i++)
    {
        k=i;  //开始一趟选择排序,假定第i个元素是后面n-i+1个未排序的元素中最小的元素
        for(j=i+1;j<n;j++)
        {
if(arr[k] > arr[j]) //如果发现比当前最小元素还小的元素,则更新记录最小元素的下标k
    k=j;
        }
//如果最小元素的下标不是后面n-i+1的未排序序列的第一个元素,则需要交换第i个元素和后面找到的最小元素的位置
        if(k != i)
        {
            tmp=arr[k];
            arr[k]=arr[i];
            arr[i]=tmp;
        }
    }
}
int main()
{
int a[10]={ -5,-9,-8,3,9,2,-28,101,-395,0};
int i;
sort(a,10);
for(i=0;i<10;i++)
printf("%d ",a[i]);
printf("\n");
return 0;
}

//运行结果
F:\c_work>a.exe
-395 -28 -9 -8 -5 0 2 3 9 101
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式