您的位置:首页 > 编程语言 > C语言/C++

c++ sort函数、strcmp函数

2014-03-04 16:10 281 查看
本文内容已经移至我最新的个人博客,欢迎大家到我的新网站交流学习。 查看文章请点我。

sort函数

头文件:algorithm

功能:排序(默认是升序)

如:

b[100];

sort(b,b+100);

可以自己定义cmp比较函数来决定sort函数的比较规则。

<span style="font-size:18px;">#include <stdio.h>
#include <stdlib.h>
#include <algorithm>
#include <string.h>
using namespace std;
struct G{
char name[101];
int age;
int grade;
}g[1000];
//使用sort函数
bool cmp(G a,G b){
if(a.grade!=b.grade)return a.grade<b.grade;
int temp=strcmp(a.name,b.name);
if(temp!=0)return temp<0;
else return a.age<b.age;
}
int main()
{
int n,i;
while(scanf("%d",&n)!=EOF){
for(i=0;i<n;i++){
scanf("%s%d%d",g[i].name,&g[i].age,&g[i].grade);
}
sort(g,g+n,cmp);//重载sort函数
for(i=0;i<n;i++){
printf("%s %d %d\n",g[i].name,g[i].age,g[i].grade);
}
}
return 0;
}</span>


srtcmp函数
头文件:string.h

功能:比较两个字符串的大小。

如:

char a[100],b[100]

赋值等操作,省略

int temp=strcmp(a,b);

如果字符串a大于字符串b则返回值为正数(非1),等于返回0,小于返回负数。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: