当前位置:首页 » 编程语言 » c语言sort排序

c语言sort排序

发布时间: 2023-06-27 22:36:24

❶ sort函数在c语言中的作用是啥

1、sort()函数描述:对给定区间所有元素进行排序。
sort()函数语法:sort(begin,end),表示一个范围。
2、sort()函数举例:

#include<algorithm>
#include<iostream>
usingnamespacestd;
main()
{
inta[11]={2,4,8,5,7,1,10,6,9,3};//a的长度=待排数据个数+1
sort(a,a+10);//对[a,a+10)排序
for(inti=0;i<10;++i)cout<<a[i]<<endl;
}

❷ C语言. .编写一个Sort函数,完成对整型数组元素升序排列。

#include<stdio.h>

voidsort(inta[],intn){//选择排序
inti,j,k,t;
for(i=0;i<n-1;++i){
k=i;
for(j=k+1;j<n;++j){
if(a[k]>a[j])k=j;
}
if(k!=i){
t=a[i];
a[i]=a[k];
a[k]=t;
}
}
}

intmain(){
inta[]={21,16,30,21,8,19,33,26,28,27,24,50,13,12};
inti,n=sizeof(a)/sizeof(a[0]);
printf("排序前: ");
for(i=0;i<n;++i)
printf("%d",a[i]);
printf(" ");
sort(a,n);
printf("排序后: ");
for(i=0;i<n;++i)
printf("%d",a[i]);
printf(" ");
return0;
}

❸ c语言运用sort 排序函数,需要的头文件是什么

sort不属于C语言的标准函数,所以也没有相应的头文件,但是可以自定义。

sort函数为将整型数组从小到大排序。

voidsort(int*a,intl)//a为数组地址,l为数组长度。

{

inti,j;

intv;

//排序主体

for(i=0;i<l-1;i++)

for(j=i+1;j<l;j++)

{

if(a[i]>a[j])//如前面的比后面的大,则交换。

{

v=a[i];

a[i]=a[j];

a[j]=v;

}

}}

(3)c语言sort排序扩展阅读

c语言自有的qsort函数

#include<stdio.h>

#include<stdlib.h>

intcomp(constvoid*a,constvoid*b)//用来做比较的函数。

{

return*(int*)a-*(int*)b;

}

intmain()

{

inta[10]={2,4,1,5,5,3,7,4,1,5};//乱序的数组。

inti;

qsort(a,n,sizeof(int),comp);//调用qsort排序

for(i=0;i<10;i++)//输出排序后的数组

{

printf("%d ",array[i]);

}

return0;

}

❹ C语言怎么使用sort函数,求举个简单的例子,谢谢

用 qsort,并且要自己写比较函数。

例如:有个 int a[1000] 的数组要排序。而比较函数你已经写好了名字是 comp,则这样写:

qsort(a,1000,sizeof(int),comp);

比较函数 comp 如下:

intcomp(constvoid*a,constvoid*b)
{
return*(int*)a-*(int*)b;
}

详细的可以查一下关于 qsort 的说明。

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

#include<stdio.h>
//选择排序算法,升序
voidsort(int*arr,intn)
{
inti,j,k;
inttmp;
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;
}
}
}
intmain()
{
inta[10]={-5,-9,-8,3,9,2,-28,101,-395,0};
inti;
sort(a,10);
for(i=0;i<10;i++)
printf("%d",a[i]);
printf(" ");
return0;
}

//运行结果
F:c_work>a.exe
-395-28-9-8-50239101

热点内容
斯诺克数据库 发布:2025-02-11 21:54:02 浏览:531
安卓手机降噪功能在哪里打开呢 发布:2025-02-11 21:52:56 浏览:700
腾讯云服务器购买网址 发布:2025-02-11 21:37:46 浏览:60
安卓电话视频怎么投电视上 发布:2025-02-11 21:32:27 浏览:18
易签到源码 发布:2025-02-11 21:31:03 浏览:498
编程班会 发布:2025-02-11 21:27:19 浏览:738
ubuntu编译fortran 发布:2025-02-11 21:21:59 浏览:201
云服务器宽带单位 发布:2025-02-11 20:48:11 浏览:538
安卓数据线公头是哪个 发布:2025-02-11 20:45:42 浏览:812
网址原始密码是什么 发布:2025-02-11 20:33:52 浏览:72