首页 > 其他分享 >sort函数

sort函数

时间:2023-06-26 16:02:00浏览次数:40  
标签:sort 函数 score score1 排序 cmp

在平常的排序过程中我么或许常常会犯难,遇到普通的数组或许还好,但是像结构体这样的数据多了难免会有些麻烦,

我查阅资料之后找到了一个函数这个函数是库里面自带的只需要头文件#include<algorithm>

下面讲讲详细用法,首先sort(a,a+n,cmp)它里面有三个变量

a代表我们的结构体的简称,这里绝对不能写结构体的名字

a+n,a就是简称,n代表我们有多少条数据需要排序

cmp代表排序的方法是一个bool函数:是以结构体中的那个数据排序的,从大到小或者其他

下面是示例代码:

主要代码:

void sortgroup()
{
    sort(sc,sc+20,cmp);
    int i=0;
    char sname[20]={0};

    for(i=0;i<20;i++)
    {
        if(strcmp(sc[i].sname,sname)!=0)
            printf("学校名称:%-5s\t 团体分数:%-5d\t 男子总分:%-5d\t 女子总分:%-5d\n  ",sc[i].sname,sc[i].score1,sc[i].scorem,sc[i].scorew);
        
    }
    
    
        
}

cmp函数:

bool cmp(score a,score b)
{
    return a.score1>b.score1;
}

这个函数score就是我们的结构体,可以出它是以score1为标准进行排序,并且是从小到大排序的

sort函数这一快并没有很复杂的地方只要照着写就行

同理我们不仅可以用sort函数对结构体排列也可以对于数组进行排列原理相同,写法相同

 

标签:sort,函数,score,score1,排序,cmp
From: https://www.cnblogs.com/222wan/p/17505817.html

相关文章

  • JavaScript学习 -- 高阶函数
    一、普通函数比较大小写声明函数判断大于或小于数组中的某个数letarr=[1,2,3,4,5,6,7,8,9]functionaiyou(a){for(leti=0;i<arr.length;i++){if(arr[i]>a){console.log(arr[i])}}console.log("****************************")}functionbucuo(a){for(......
  • 两数交换(函数)
    #include<stdio.h>swap(int*pa,int*pb){ inttmp=0; tmp=*pa; *pa=*pb; *pb=tmp;}intmain(){ inta=10; intb=20; printf("a=%d,b=%d\n",a,b); swap(&a,&b); printf("a=%d,b=%d\n",a,b); return......
  • Merge Sorted Array
    Youaregiventwointegerarraysnums1andnums2,sortedinnon-decreasingorder,andtwointegersmandn,representingthenumberofelementsinnums1andnums2respectively.Mergenums1andnums2intoasinglearraysortedinnon-decreasingorder.The......
  • 图级别数据读取函数示例
    def_load_graph_kernel_dataset(dataset):dataset.download()def_load_from_txt_file(filename,names=None,dtype=None,index_increment=None):df=pd.read_csv(dataset._resolve_path(filename=f"{dataset.name}_{filename}.tx......
  • VS依赖注入(DI)构造函数自动生成局部私有变量
    前言依赖注入(DI)在开发中既是常见的也是必需的技术。它帮助我们优化了代码结构,使得应用更加灵活、易于扩展,同时也降低了各个模块之间的耦合度,更容易进行单元测试,提高了编码效率和质量。我们经常会先定义局部变量,再在构造函数中使用,每次都要这样去编写耗时,下面通过VS自带功能,可以......
  • excel中的COUNTIFS函数用法
    语法:COUNTIFS(range1,criteria1,range2,criteria2,...)参数:range1:为需要计算满足第一个条件criteria1的单元格数量的单元格区域,简称条件区域。criteria1:为第一个区域range1中将被计算在内的条件,简称条件,其形式可以为数字、表达式或文本。同理,range2为第二个条件区域,criteria......
  • VS依赖注入(DI)构造函数自动生成局部私有变量
    前言依赖注入(DI)在开发中既是常见的也是必需的技术。它帮助我们优化了代码结构,使得应用更加灵活、易于扩展,同时也降低了各个模块之间的耦合度,更容易进行单元测试,提高了编码效率和质量。我们经常会先定义局部变量,再在构造函数中使用,每次都要这样去编写耗时,下面通过VS自带功能,可以......
  • Delphi字符串比较和大小写转换函数
    首部functionSameText(constS1,S2:string):Boolean;$[SysUtils.pas功能返回两个字符串是否相等说明不区分大小写参考<NULL>例子CheckBox1.Checked:=SameText(Edit1.Text,Edit2.Text);━━━━━━━━━━━━━━━━━━━━━......
  • Pytorch | view()函数的使用
    函数简介Pytorch中的view函数主要用于Tensor维度的重构,即返回一个有相同数据但不同维度的Tensor。根据上面的描述可知,view函数的操作对象应该是Tensor类型。如果不是Tensor类型,可以通过tensor=torch.tensor(data)来转换。普通用法(手动调整size)view(参数a,参数b,…),其中,总......
  • 发布一个Visual Studio 2022 插件,可以自动完成构造函数依赖注入代码
    赖注入(DI)在开发中既是常见的也是必需的技术。它帮助我们优化了代码结构,使得应用更加灵活、易于扩展,同时也降低了各个模块之间的耦合度,更容易进行单元测试,提高了编码效率和质量。不过,手动注入依赖项也可能会成为我们开发过程中的瓶颈。通常情况下,当我们需要注入大量依赖对象时,我......